這是個人在最近使用json時做的總結,拿出來給沒接觸過的小弟們曬曬,適用與沒接觸過json的人員,其中json2。js請到json官網(wǎng)下載。
<script type="text/javascript" src="json2.js"></script>
<script>
//直接聲明json數(shù)據(jù)結構
var myJSONObject = {"bindings": [
{"ircEvent": "PRIVMSG", "method": "newURI", "regex": "^http://.*"},
{"ircEvent": "PRIVMSG", "method": "deleteURI", "regex": "^delete.*"},
{"ircEvent": "PRIVMSG", "method": "randomURI", "regex": "^random.*"}
]
};
//聲明字符串,可對比一下json文本與我們正常文本的區(qū)別
var normalstring=‘[{persons:[{name:"jordan",sex:"m",age:"40"},{name:"bryant",sex:"m",age:"28"}, {name:"McGrady",sex:"m",age:"27"}]}]‘;
var jsontext=‘[{"persons":[{"name":"jordan","sex":"m","age":"40"},{"name":"bryant","sex":"m","age":"28"},{"name":"McGrady","sex":"m","age":"27"} ]}]‘;
//調用eval函數(shù)轉換為json對象,
var myE = eval(normalstring);
document.writeln(myE+‘<br><br>‘);
//將json對象轉換為字符串
var text = JSON.stringify(myE);
//對比轉換后的json文本與聲明的文本區(qū)別
document.writeln(‘轉換后的json文本:‘+text+‘<br><br>聲明的json格式文本‘+jsontext+‘<br><br>聲明的普通格式文本‘+normalstring+‘<br><br>‘);
//當安全比較重要的時候使用JSON解析就好一些。JSON解析只會識別JSON文本并且它更安全,下面調用json的parse函數(shù)對文本數(shù)據(jù)轉換生成json數(shù)據(jù)結構
var myData = JSON.parse(jsontext);
document.writeln(myData+‘<br><br>‘);
//下面是對json對象的增刪查改操作
//聲明json對象
var jsonObj2={persons:[{name:"jordan",sex:"m",age:"40"}, {name:"bryant",sex:"m",age:"28"}, {name:"McGrady",sex:"m",age:"27"} ]};
var persons=jsonObj2.persons;
var str="";
var person={name:"yaoMing",sex:"m",age:"26"};
//以下為json對象的操作,去掉注釋可以查看操作結果
//jsonObj2.persons.push(person);//數(shù)組最后加一條記錄
//jsonObj2.persons.pop();//刪除最后一項
//jsonObj2.persons.shift();//刪除第一項
jsonObj2.persons.unshift(person);//數(shù)組最前面加一條記錄 只要適合Javascript的方法都是可以用在JSON對象的數(shù)組中的!所以還有另外的方法splice( )進行crud操作! //刪除
//jsonObj2.persons.splice(0,2);//開始位置,刪除個數(shù)
//替換不刪除
var self={name:"tom",sex:"m",age:"24"};
var brother={name:"Mike",sex:"m",age:"29"};
jsonObj2.persons.splice(1,0,self,brother,self);//開始位置,刪除個數(shù),插入對象
//替換并刪除
//jsonObj2.persons.splice(0,1,self,brother);//開始位置,刪除個數(shù),插入對象
for(var i=0;i<persons.length;i++){ var cur_person=persons[i];str+=cur_person.name+"‘sex is "+cur_person.sex+" and age is"+cur_person.age+"<br><br>"; }
document.writeln(str);
//轉換為json文本
var myjsonobj = JSON.stringify(jsonObj2);
document.writeln(myjsonobj);
</script>