2 回答
TA贡献1773条经验 获得超3个赞
这是,我个人觉得还是先对JSON进行遍历,针对不同的Num值,得到不同的a值,然后用字符串吧这些加起来,然后在调用JSON.parse()函数进行字符串到json的转换。我简单的写了个小函数,你可以参考下!!
function jsonAdd(json) {
var nArr=[];
var ss='[';
json.map((x)=>{
var num=parseInt(x.Num);
ss+='{"Num":'+num+","+'"a:":';
if(num>0&&num<=6){
ss+='0},';
}else if(num>6&&num<=12){
ss+='1},';
}else if(num>12&&num<=18){
ss+='2},';
}else if(num>18&&num<=24){
ss+='3},';
}
})
ss = ss.substring(0, ss.length - 1);
ss+="]";
return JSON.parse(ss);
}
调用函数,传入原始数据,返回一个修改后的数据.
TA贡献1785条经验 获得超8个赞
别人说Map一下没说错啊,另外json的属性名是双引号。拿走不谢
var obj = json.map(function (t) {
var val = +t['Num'];
t['"a"'] = Math.floor(val/6).toString();
return t;
});
添加回答
举报