js如何修改JSONObject的值??

JavaScript07

js如何修改JSONObject的值??,第1张

var JSONObject = {data:[

{count:335, goods:'直接访问'},

{count:310, goods:'邮件营销'},

{count:234, goods:'联盟广告'}

]}

// 取到data所对应的json数组

var JSONArray = JSONObject.data

// 声明一个数组,用于存储多个json对象

var JSONArray2 = []

// 声明一个json对象,用于临时存储json数据

var tempJson = {}

// 遍历数组

for (var i in JSONArray) {

// 清空json对象

tempJson = {}

// 获取key=count所对应的值并添加到一个新的json对象中

// 新的json对象的key为value

// 添加json元素(key)并赋值(value)

tempJson['value'] = JSONArray[i].count

// 将该json对象添加到数组中

JSONArray2[i] = tempJson

// 再次清空json对象

// 获取key=goods所对应的值并添加到一个新的json对象中

tempJson = {}

tempJson['name'] = JSONArray[i].goods

JSONArray2[i] = tempJson

}

// 改变JSONObject中key=data的值

JSONObject.data = JSONArray2

JSONArray则是[]包裹起来的一个数组(Array)

如何清空jsonarray,有两种方法。

1、Java代码

JSONArray jsonArray= new JSONArray("[]")

2、Java代码

for (int i = 0, len = jsonArr.length() i < len i++) {  

    JSONObject obj = jsonArr.getJSONObject(i)  

    obj.remove("key")  

   }

var c = a.concat(b),//合并成一个数组

temp = {},//用于id判断重复

result = []//最后的新数组

//遍历c数组,将每个item.id在temp中是否存在值做判断,如不存在则对应的item赋值给新数组,并将temp中item.id对应的key赋值,下次对相同值做判断时便不会走此分支,达到判断重复值的目的;

c.map((item,index)=>{

if(!temp[item.id]){

result.push(item)

temp[item.id] = true

}

})

console.log(result)