Contoh dalam artikel ini menerangkan kaedah js membaca dan menghuraikan data jenis JSON. Kongsikan dengan semua orang untuk rujukan anda, butirannya adalah seperti berikut:
1. Apakah itu JSON?
JSON (JavaScript Object Notation) ialah format pertukaran data ringan yang menggunakan format teks bebas bahasa sepenuhnya. Pada masa yang sama, JSON ialah format asli JavaScript.
Sangat sesuai untuk interaksi antara pelayan dan JavaScript
2. Mengapa menggunakan JSON dan bukannya XML
Mereka semua mengatakan ini: Walaupun terdapat banyak publisiti tentang bagaimana XML mempunyai kelebihan platform dan merentas bahasa, namun, melainkan digunakan pada Perkhidmatan Web, dalam aplikasi Web biasa, pembangun sering bergelut dengan penghuraian XML. . Sama ada pelayan menjana atau memproses XML, atau klien menggunakan JavaScript untuk menghuraikan XML, ia sering membawa kepada kod yang kompleks dan kecekapan pembangunan yang sangat rendah. Malah, bagi kebanyakan aplikasi web, mereka tidak memerlukan XML yang kompleks untuk menghantar data sama sekali, kebolehlanjutan XML jarang mempunyai kelebihan, dan banyak aplikasi AJAX malah secara langsung mengembalikan serpihan HTML untuk membina halaman web dinamik. Berbanding dengan mengembalikan XML dan menghuraikannya, mengembalikan serpihan HTML sangat mengurangkan kerumitan sistem, tetapi juga tidak mempunyai tahap fleksibiliti tertentu
3. Cara menggunakan
Kod berikut ialah coretan kod HTML, yang membolehkan anda mengklik butang untuk menghuraikan data format json dan memaklumkan kandungan
var json = { contry:{ area:{ man:"12万", women:"10万" } } }; //方式一:使用eval解析 var obj = eval(json); alert(obj.constructor); alert(obj.contry.area.women); //方式二:使用Funtion函数 var strJSON = "{name:'json name'}";//得到的JSON var obj = new Function("return" + strJSON)();//转换后的JSON对象 alert(obj.name);//json name alert(obj.constructor); //复杂一点的json数组数据的解析 var value1 = [ {"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"} ]; var obj1 = eval(value1); alert(obj1[0].c01); //复杂一点的json的另一种形式 var value2 = { "list":[ {"password":"1230","username":"coolcooldool"}, {"password":"thisis2","username":"okokok"} ], "array":[ {"password":"1230","username":"coolcooldool"}, {"password":"thisis2","username":"okokok"} ] }; var obj2 = eval(value2); alert(obj2.list[0].password); }
4. eval
① Borang ini akan mengurangkan prestasi dengan ketara kerana ia mesti menjalankan pengkompil
② Fungsi eval juga melemahkan keselamatan aplikasi anda kerana ia memberikan terlalu banyak kuasa kepada teks yang dinilai. Sama seperti cara penyataan with dilaksanakan, ia memperlahankan prestasi bahasa
③ Pembina Fungsi ialah satu lagi bentuk eval, jadi ia juga harus dielakkan.
Saya harap artikel ini akan membantu semua orang dalam pengaturcaraan JavaScript.