js中怎么获取json中的key,value值?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js中怎么获取json中的key,value值?相关的知识,希望对你有一定的参考价值。

1、首先,需要创建一个Json文件。或者是用户自行从网络上获得Json文件。

2、如果用户是创建的。还需要在新建的Json文件中输入数据。

3、准备好Json数据文件以后,接着创建一个html文件。在<script>标签内创建一个函数,使用Ajax语言获得和读取Json文件。

4、获取和读取文件以后,在读取数据前。用户还需要创建一个用户遍历Json文件全部数据的函数。

5、创建数据遍历函数以后,在获取和和读取函数中进行调用。遍历读取文件中的数据。

6、获取Json文件中的全部数据以后,将数据用Html代码呈现到网页上。

参考技术A

var obj = "id": 1, "name":"张三";

for(var key in obj)

alert("Key是:" + key);

alert("对应的值是:" + obj[key]);

Js遍历json对象所有key及根据动态key获取值:

Js代码  

<script type="text/javascript">  

getJson('age');  

function getJson(key)  

var jsonObj="name":"傅红雪","age":"24","profession":"刺客";  

//1、使用eval方法      

var eValue=eval('jsonObj.'+key);  

alert(eValue);  

//2、遍历Json串获取其属性  

for(var item in jsonObj)  

if(item==key)  //item 表示Json串中的属性,如'name'  

var jValue=jsonObj[item];//key所对应的value  

alert(jValue);  

 

 

//3、直接获取  

alert(jsonObj[''+key+'']);  

 

</script>  

通过上边三种方法就可以取到json中key对应的值。

参考技术B

var obj = "id": 1, "name":"张三";

for(var key in obj)




var obj = "id": 1, "name":"张三";

for(var key in obj)



alert("Key是:" + key);


json对象排序把key中的value值排序

json是这样的["name":"zhangsan","age":"15","name":"lisi","age":"12","name":"wangwu","age":"18"]
把key值 age中的value 降序

Arrays.sort() java中的排序方法 如果是对象的话可以自己写比较器compare()自己定义比较对象中的某个属性 参考技术A 你是要在客户端用js来做,还是服务端用java做?追问

服务器JAVA做

追答

我这个作法需要依赖外来包 jackson,用来解析json的,这样最稳定,效果最好,如下:

List> list = new ObjectMapper().readValue(jsonStr, List.class);
List ageList = new ArrayList();
for (Map map : list)
ageList.add(Integer.parseInt((String)map.get("age")));

Collections.sort(ageList);
Collections.reverse(ageList);

// ageList就是已经排序好的年龄了,如果有其他需要,你也可以在上面加东西

追问

如果是arraylist 我该怎么排序呢, ??? 还是 name age

追答

没明白你的追问是什么意思,直接性的排序都可以用Collections.sort完成

追问

arraylist a = new arraylist();
这里的封装的key和value,我怎么按age的值排序。

追答

哦,你是已经对象化了啊,这个更简单了
Collections.sort(list, new Comparator()
public int compare(User o1, User o2)
return o2.getAge()>o1.getAge();

);

追问

那个值是Double的可以排吗?? 方便把你QQ给我吗?? 谢谢

追答

Double的也行,数字型的都可以直接用 > 比较
你可以用百度Hi我……

追问

double 的不能做比较啊转成int会损失精度的, 只有int能, 大哥我百度hi你了, 你没反应啊, 帮帮我 谢谢啦 、

追答

double不要转int啊,double就按double来处理就行,回你了

本回答被提问者采纳

以上是关于js中怎么获取json中的key,value值?的主要内容,如果未能解决你的问题,请参考以下文章

jquery中怎么获取json的key值?

jquery中怎么获取json的value值

js获取json对象中的key和value,并组成新数组

json中怎么获取key

js获取json对象中的key和value,并组成新数组

jsmap怎么获取里面所有的属性