json是一種輕量級的數據格式,(本質為字符串)
低版本可以使用json2.js插件來解決。下載地址:https://github.com/douglascrockford/JSON-js
JSON語法:數據在名稱/值對中、數據由逗號分隔、花括號保存對象、方括號保存數組
'{"name":"小明","age":18}'
'["name":"小明","age",18]'
把JSON格式轉成對象:JSON.parse()
注意:
- JSON格式必須為標准的JSON格式
- key值必須是雙引號(單引號會報錯)
- value如果是字符串也要加雙引號
let json = '[{"name":"小明","age":18},{"name":"小花","age":16}]';
json = JSON.parse(json);
console.log(json);

把對象轉成標准json:JSON.stringify()
let obj = {name:'小明','age':18,a:function(){},b:true};
console.log(JSON.stringify(obj));//{"name":"小明","age":18,"b":true}
注:轉不了undefined和函數(即使轉了也不會顯示)
eval():能夠把字符串盡量轉成js運行的代碼
小技巧 - > 在使用eval傳化json的時候,json用字符串括號包一下 eval('('+json+')')
eval是不安全的(可能會注入不必要的東西),通過new Function('','return'+json)();可以解決該問題
let json = "{'name':'蜘蛛俠'}";
// console.log(JSON.parse(json));
// console.log(eval('('+ json +')'));
// console.log(new Function('a,b','return a+b')(1,2));
console.log(new Function('','return'+json)());
