js如何使用for循环往json添加数据?

例:vararr[{name:a:,num:1},{name:b,num:1},{name:c,num:1},{name:d,num:1},{name:e,num:1},... 例:var arr [{name:a:,num:1},{name:b,num:1},{name:c,num:1},{name:d,num:1},{name:e,num:1},{name:f,num:1}],
遍历上面这串数组,并往一个新的json赋值
for(var i= 0;i<arr.length;i++){
json[arr[i].name] = arr[i].num
}
因为json没有push和add的方法, "="会把上一条给覆盖掉
怎样才能做出数组push的那种效果呢
展开
 我来答
程序猿小林
2020-03-27 · 写写百度经验,分享我的个人经验。
程序猿小林
采纳数:60 获赞数:29

向TA提问 私信TA
展开全部

=并不会把上一条覆盖,因为arr[i].name并不一样,相当于给json动态添加不同的属性。结果如下

当然,如果你数组中的那么如果会一样的话,那么就会被覆盖掉。如果是想要往一个新的对象上加,当作它的属性,那么属性名肯定是唯一的。如果你只是单纯的先把数组变成json串的话,可以使用JSON.stringify();,如下

追问
哦,我知道了我的问题出在哪里了,那我问一下
比如 var i = 'name'
json['i'] = '111' json = {name:111}
那么如何在 json[i] 里添加新元素, 要做成 json = {name:{name:111}} 这种效果
json[i][i]并不好用
匿名用户
2020-03-28
展开全部
原型链添加。
Object.prototype.add = function() {
这里是你写的add相关方法。
}
push同理。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
逗比小姐姐
2020-03-27
知道答主
回答量:42
采纳率:0%
帮助的人:3万
展开全部
没看懂你的问题是什么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
狮子chan009
2020-04-02
知道答主
回答量:49
采纳率:0%
帮助的人:2.6万
展开全部
没看懂你要实现啥
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式