JavaScript JSON.parse() 方法
-
JavaScript JSON.parse() 方法
JSON.parse()方法解析字符串并返回JavaScript对象。该字符串必须以JSON格式编写。JSON.parse()方法可以选择使用函数转换结果。实例:解析一个字符串(以JSON格式编写)并返回一个JavaScript对象:
尝试一下var obj = JSON.parse('{"firstName":"John", "lastName":"Doe"}');
-
浏览器支持
项 IE/Edge Chrome FireFox Safari Opera 方法 parse() 8.0+4.0+3.5+4.0+11.5+ -
语法
JSON.parse(string, function) -
参数值
参数 描述 string 必需的。 以JSON格式编写的字符串 function 可选的。 用于转换结果的函数。 为每个项目调用该函数。 在父项之前转换任何嵌套对象。 - 如果函数返回有效值,则项目值将替换为转换后的值
- 如果函数返回undefined,则删除该项
-
技术细节
项目 描述 返回值: JSON对象或数组 JavaScript版本: ECMAScript 5 -
更多例子
如何使用回调函数功能:
尝试一下/*将“city”的值替换为大写:*/ var text = '{ "name":"John", "age":"39", "city":"New York"}'; var obj = JSON.parse(text, function (key, value) { if (key == "city") { return value.toUpperCase(); } else { return value; } }); document.getElementById("demo").innerHTML = obj.name + ", " + obj.city;
解析从服务器收到的JSON:
尝试一下var xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { var myObj = JSON.parse(this.responseText); document.getElementById("demo").innerHTML = myObj.name; } }; xmlhttp.open("GET", "json_demo.txt", true); xmlhttp.send();