JSON.parse()
JSON µÄ³£¹æÓÃ;ÊÇͬ web ·þÎñÆ÷½øÐÐÊý¾Ý´«Êä¡£
ÔÚ´Ó web ·þÎñÆ÷½ÓÊÕÊý¾Ýʱ£¬Êý¾ÝÓÀÔ¶ÊÇ×Ö·û´®¡£
ͨ¹ý JSON.parse() ½âÎöÊý¾Ý£¬ÕâЩÊý¾Ý»á³ÉΪ JavaScript ¶ÔÏó¡£
ʵÀý ¨C ½âÎö JSON
ÇëÏëÏóÒ»ÏÂÎÒÃÇ´Ó web ·þÎñÆ÷½ÓÊÕµ½Õâ¶ÎÎı¾£º
'{ "name":"Bill Gates", "age":62, "city":"Seattle"}'
ÇëʹÓà JavaScript º¯Êý JSON.parse() °ÑÎı¾×ª»»Îª JavaScript ¶ÔÏó£º
var obj = JSON.parse('{ "name":"Bill Gates", "age":62, "city":"Seattle"}');
ÇëÈ·±£Õâ¶ÎÎı¾ÒÔ JSON ¸ñʽÊéд£¬·ñÔò»á³öÏÖÓï·¨´íÎó¡£
ÇëÔÚÄúµÄÒ³ÃæÖÐʹÓà JavaScript ¶ÔÏó£º
ʵÀý
<p id="demo"></p> <script> document.getElementById("demo").innerHTML = obj.name + ", " + obj.age; </script>
À´×Ô·þÎñÆ÷µÄ JSON
ÄúÄܹ»Í¨¹ýʹÓà AJAX ÇëÇó´Ó·þÎñÆ÷ÇëÇó JSON¡£
Ö»Òª·þÎñÆ÷µÄÏìÓ¦ÊÇÓà JSON ¸ñʽ±àдµÄ£¬Äã¿ÉÒÔ½«×Ö·û´®½âÎö³É JavaScript ¶ÔÏó¡£
ʵÀý
ÇëʹÓà XMLHttpRequest ´Ó·þÎñÆ÷»ñÈ¡Êý¾Ý£º
var xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { myObj = JSON.parse(this.responseText); document.getElementById("demo").innerHTML = myObj.name; } }; xmlhttp.open("GET", "json_demo.txt", true); xmlhttp.send();
×÷Ϊ JSON µÄÊý×é
ÔÚ¶ÔÑÜÉú×ÔÊý×éµÄ JSON ʹÓà JSON.parse() ºó£¬´Ë·½·¨½«·µ»Ø JavaScript Êý×飬¶ø²»ÊÇ JavaScript ¶ÔÏó¡£
ʵÀý
´Ó·þÎñÆ÷·µ»ØµÄ JSON ÊÇÊý×飺
var xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { myArr = JSON.parse(this.responseText); document.getElementById("demo").innerHTML = myArr[0]; } }; xmlhttp.open("GET", "json_demo_array.txt", true); xmlhttp.send();
ÀýÍâ
½âÎöÈÕÆÚ
JSON Öв»ÔÊÐíÈÕÆÚ¶ÔÏó¡£
Èç¹ûÄúÐèÒª°üº¬ÈÕÆÚ£¬ÇëдΪ×Ö·û´®¡£
Ö®ºóÄú¿ÉÒÔ½«Æäת»»»ØÈÕÆÚ¶ÔÏó£º
ʵÀý
°Ñ×Ö·û´®×ª»»ÎªÈÕÆÚ£º
var text = '{ "name":"Bill Gates", "birth":"1955-10-28", "city":"Seattle"}';
var obj = JSON.parse(text);
obj.birth = new Date(obj.birth);
document.getElementById("demo").innerHTML = obj.name + ", " + obj.birth;
»òÕßÄú¿ÉÒÔÒÑʹÓà JSON.parse() º¯ÊýµÄµÚ¶þ¸ö²ÎÊý£¬±»³ÆÎª reviver¡£
Õâ¸ö reviver ²ÎÊýÊǺ¯Êý£¬ÔÚ·µ»ØÖµÖ®Ç°£¬Ëü»á¼ì²éÿ¸öÊôÐÔ¡£
ʵÀý
½«×Ö·û´®×ª»»ÎªÈÕÆÚ£¬Ê¹Óà reviver º¯Êý£º
var text = '{ "name":"Bill Gates", "birth":"1955-10-28", "city":"Seattle"}'; var obj = JSON.parse(text, function (key, value) { if (key == "birth") { return new Date(value); } else { return value; }}); document.getElementById("demo").innerHTML = obj.name + ", " + obj.birth;
½âÎöº¯Êý
JSON Öв»ÔÊÐíº¯Êý¡£
Èç¹ûÄúÐèÒª°üº¬º¯Êý£¬Çë°ÑËüд×÷×Ö·û´®¡£
ÉÔºóÄú¿ÉÒÔ°ÑËüת»»»Øº¯Êý£º
ʵÀý
°Ñ×Ö·û´®×ª»»Îªº¯Êý£º
var text = '{ "name":"Bill Gates", "age":"function () {return 62;}", "city":"Seattle"}';
var obj = JSON.parse(text);
obj.age = eval("(" + obj.age + ")");
document.getElementById("demo").innerHTML = obj.name + ", " + obj.age();
ÄúÓ¦¸Ã±ÜÃâÔÚ JSON ÖÐʹÓú¯Êý£¬º¯Êý»á¶ªÊ§ËüÃǵÄ×÷ÓÃÓò£¬¶øÇÒÄú»¹ÐèҪʹÓà eval() °ÑËüÃÇת»»»Øº¯Êý¡£
ä¯ÀÀÆ÷Ö§³Ö
ËùÓÐÖ÷Á÷ä¯ÀÀÆ÷ÒÔ¼°×îÐ嵀 ECMAScript (JavaScript) ±ê×¼¾ù°üº¬ JSON.parse() º¯Êý£º
ϱíÖеÄÊý×ÖÖ¸¶¨ÁËÍêȫ֧³Ö JSON.parse() º¯ÊýµÄÊ׸öä¯ÀÀÆ÷°æ±¾£º
Yes | 8.0 | 3.5 | 4.0 | 10.0 |
¶ÔÓÚ¸üÀϵÄä¯ÀÀÆ÷£¬ÒÔϵØÖ·ÖÐµÄ JavaScript ¿âÊÇ¿ÉÓõģº