『壹』 js中如何向json數組添加元素
比如現在抄有一個json對象為jsonObj,需要給這個對象添加新的屬性newParam,同時給newParam賦值為pre。做法如下:
var jsonObj={
'param1':22,
'param2' :33
};
jsonObj. newParam ='pre';
新的屬性添加以後,json對象變成:
var jsonObj={
'param1':22,
'param2' :33,
'newParam':'pre'
};
(1)js處理json數組擴展閱讀:
json數據格式:主要由對象 { } 和數組 [ ] 組成:
其中對象包括鍵值對(屬性:屬性值){key: value},value 可為 str,num,list,obj。取值使用 objcet.key。
{key: value, key2:value2,} 鍵:值用冒號分開,對間用,連接。
數組包含元素:num,str,list,objcet 都可以,利用索引訪問 [index],用 . 連接各個值。
『貳』 js如何處理兩個json數組去除重復數據,然後合並數組,求大神幫忙解決下
varc=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)
『叄』 js怎樣讀取json裡面的數據
varjson={contry:{area:{man:"12萬",women:"10萬"}}};
//方式一:使用eval解析
varobj=eval(json);
alert(obj.constructor);
alert(obj.contry.area.women);
//方式二:使用Funtion函數
varstrJSON="{name:'jsonname'}";//得到的JSON
varobj=newFunction("return"+strJSON)();//轉換後的JSON對象
alert(obj.name);//jsonname
alert(obj.constructor);
//復雜一點的json數組數據的解析
varvalue1=[{"c01":"1","c02":"2","c03":"3","c04":"4","c05":"5","c06":"6","c07":"7","c08":"8","c09":"9"},{"c01":"2","c02":"4","c03":"5","c04":"2","c05":"8","c06":"11","c07":"21","c08":"1","c09":"12"},{"c01":"5","c02":"1","c03":"4","c04":"11","c05":"9","c06":"8","c07":"1","c08":"8","c09":"2"}];varobj1=eval(value1);
alert(obj1[0].c01);
//復雜一點的json的另一種形式
varvalue2={"list":[{"password":"1230","username":"coolcooldool"},{"password":"thisis2","username":"okokok"}],"array":[{"password":"1230","username":"coolcooldool"},{"password":"thisis2","username":"okokok"}]};
varobj2=eval(value2);
alert(obj2.list[0].password);
『肆』 在js中怎麼解析JsonObject對象數組
js和java中的json對象無法互相轉換的吧(用struts2可以),可以在java中將對象轉換為json字元串,傳到js後,再在js中將json字元串轉換成json對象
Java code
Map map1 = new HashMap();
Map map2 = new HashMap();
map1.put("id", 1);
map1.put("name", "張三");
map2.put("id", 2);
map2.put("name","李四");
List list = new ArrayList();
list.add(map1)
list.add(map2)
Map jsonMap = new HashMap();
jsonMap.put("jsonstr",list); //必須是map對象才能轉換成json對象
JSONObject json = JSONObject.fromObject(map); //要用到json-lib-2.3-jdk15.jar
return json.toString();
記得引入json.js
JScript code
UserAction.getUser(function(result) { var jsonResult = JSON.parse(result);//如何不行用var jsonResult=JSON.parseJSON(),json版本問題 var resultList = jsonResult['jsonstr']; for(var one in resultList){ var item= resultList[one]; alert(item.id); alert(item.name); }
『伍』 JS怎麼把N個JSON數組進行比較,相同的合並後放進新數組,不同的一起放進新數組
如果兩個json欄位相同,拼接起來的話 後一個json會覆蓋前一個json的欄位。
如果想保留2個json的數據 就把這2個json放到一個數組里吧。
分別給出代碼:
拼接,欄位相同會覆蓋:
<scripttype="text/javascript">
varj1={
'':'',
action:'adser',
user:飓',
pwd:',
rpassword:',
email:[email protected]'
}
varj2={
aa:'aa',
user:'user'
}
json=eval('('+(JSON.stringify(j1)+JSON.stringify(j2)).replace(/}{/,',')+')');
console.log(json);
</script>
<scripttype="text/javascript">
varj1={
'':'',
action:'adser',
user:飓',
pwd:',
rpassword:',
email:[email protected]'
}
varj2={
'':餶',
action:'adser222',
user:',
pwd:',
rpassword:',
email:[email protected]'
}
json=[j1,j2];
console.log(json);
</script>
『陸』 js怎麼給循環給json數組追加元素,json數組初始為空
需要准備的材料分別是:電腦、html編輯器、瀏覽器。
1、首先,打開html編輯器,新建html文件,例如:index.html。