JSON能像LIST一样操作吗?

该用户不会设置昵称 2012-03-29 11:03:41
比如说用js对原json数据做了一次筛选,能像list一样,newjson.add(json[i]),有这种类似的操作吗?
...全文
162 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
默默不得鱼 2012-03-30
  • 打赏
  • 举报
回复
JSON不就是这种结构[{key:value},{key:value}]
var arr=[{},{}];
这不是数组是什么 数组里放的是object而已
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

简单点,可以像这样弄
JScript code

var obj=eval(json);
obj.push("a");

//或者

var obj = {name1:"value1", name2:"value2"}; // 新建对象(字符串形式时,字段名必须带双引号)
obj.name3 = "value3"; // 添加
[/Quote]
我整个人都难了
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

简单点,可以像这样弄
JScript code

var obj=eval(json);
obj.push("a");

//或者

var obj = {name1:"value1", name2:"value2"}; // 新建对象(字符串形式时,字段名必须带双引号)
obj.name3 = "value3"; // 添加
[/Quote]
我的意思是旧的JSON数据json数据在被筛选之后选择其中的i项,添加到新的JSON数据newjson中。
我觉得比起这样,操作数组更实在。
我就是为了避免我的整个程序参数风格不统一,才不想去操作数组。
铜臂阿铁木 2012-03-29
  • 打赏
  • 举报
回复
其实能 ls那样子。
  • 打赏
  • 举报
回复
简单点,可以像这样弄

var obj=eval(json);
obj.push("a");

//或者

var obj = {name1:"value1", name2:"value2"}; // 新建对象(字符串形式时,字段名必须带双引号)
obj.name3 = "value3"; // 添加
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 的回复:]

居然还有人在用eval
JSON解析出来那就是个Array,不过是里面每个元素是object而已
[/Quote]
能 toArray()?
默默不得鱼 2012-03-29
  • 打赏
  • 举报
回复
居然还有人在用eval
JSON解析出来那就是个Array,不过是里面每个元素是object而已
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 的回复:]

可以像Dictionary那样填充数据
[/Quote]
谢谢!
tptptp00 2012-03-29
  • 打赏
  • 举报
回复
可以像Dictionary那样填充数据
tptptp00 2012-03-29
  • 打赏
  • 举报
回复
json可以这样
var newjson = {"name":"1111"};
newjson["aaa"]="wwww";
  • 打赏
  • 举报
回复

[Quote=引用 7 楼 的回复:]

json在JS中可以当作一个简单对象来用,JS是动态类型的,你不需要知道原来的obj具体定义(尽管你可以通过prototype取到)以及长度,你只要确定它是一个object就行了
[/Quote]
我想了一个很蛋疼的方法,大概就是 筛选原来的json数据,把符合条件的json[i]放入数组,筛选完以后,遍历数组,拼接字符串,再eval成json.蛋痛的我已经实现了.谢谢你的提议!
  • 打赏
  • 举报
回复
json在JS中可以当作一个简单对象来用,JS是动态类型的,你不需要知道原来的obj具体定义(尽管你可以通过prototype取到)以及长度,你只要确定它是一个object就行了
adonis_net 2012-03-29
  • 打赏
  • 举报
回复
json是一种数据格式,没有提供类似list的方法,只有自己写js去实现或在服务端生成控制json操作的的方法。
参考
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

简单点,可以像这样弄
JScript code

var obj=eval(json);
obj.push("a");

//或者

var obj = {name1:"value1", name2:"value2"}; // 新建对象(字符串形式时,字段名必须带双引号)
obj.name3 = "value3"; // 添加
[/Quote]
我能把后者理解为填坑法么?
我不会知道原来的json筛选后的长度,貌似填坑也很难吧。

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧