js 处理json json是key与value的模式key是动态取到的,现有键值对stuno ,001 json对象为a,我取到了key值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 处理json json是key与value的模式key是动态取到的,现有键值对stuno ,001 json对象为a,我取到了key值相关的知识,希望对你有一定的参考价值。

也就是 stuno将该值赋值给变量 key1 问 为什吗a.key1取不到 001 而 a.stuno却可以 有什么办法将或者是写法用a.key1也可以得到001?谢谢!

var str = '"stuno":"0"';
eval('var json = ' + str);
// var json = eval('('+str+')');
alert(json.stuno);//直接取值 结果0
for(var name in json)
alert(name );//name 结果 stuno
alert(json[name]);//value 结果 0 和上面直接去是一样的

或者你的要求:
var key = 'stuno';
alert(json[key]);//结果 0 和上面也一样
要采纳哦~
参考技术A astuno:001,stuno1:002
然后你啥意思?
key1 = a.stuno?追问

不是 我取到了 "stuno" 将其赋值给了 key1现在 a.stuno 能得到001 但是 a.key1确得不到

追答

你怎么赋值的?

追问

json 的 对象我能取到 只不过 key和 value 都是动态的 key我通过其他的途径取到的,然后赋给其他变量也就是key1 现在 我无法通过key1 取到value值

追答

我晕~~ 你意思,你让stuno = key1 ,然后用a.key1 去取值吗?

追问

是啊 是啊

追答

我擦~, 那累死你,你也取不到这个值....json的取值方法就是要用 obj.key 那个key 组成json之后就固定了....你给赋值啥的没效果....

追问

谢谢你,好吧,那请问有什么方法 能够取到json中的 key值呢 貌似我只能得到value值啊?

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 json是key与value的模式key是动态取到的,现有键值对stuno ,001 json对象为a,我取到了key值的主要内容,如果未能解决你的问题,请参考以下文章

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

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

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

json与js练习

json中怎么获取key

python处理JSON 序列化与反序列化