Json
eval()函数可计算某个字符串,并执行其中的的 JavaScript 代码。
语法eval(string)
返回值
通过计算 string 得到的值(如果有的话)。
说明
该方法只接受原始字符串作为参数,如果 string 参数不是原始字符串,那么该方法将不作任何改变地返回。因此请不要为 eval() 函数传递 String 对象来作为参数。
如果试图覆盖 eval 属性或把 eval() 方法赋予另一个属性,并通过该属性调用它,则 ECMAScript 实现允许抛出一个 EvalError 异常。
抛出
如果参数中没有合法的表达式和语句,则抛出 SyntaxError 异常。
如果非法调用 eval(),则抛出 EvalError 异常。
如果传递给 eval() 的 Javascript 代码生成了一个异常,eval() 将把该异常传递给调用者。
Json是一种数据格式
Json不支持js的undefined
Json不支持变量,函数或者对象的实例,他就是一种表示结构化数据的格式
Json的key值和value值都必须要用双引号
json中不声明变量。无引号在末尾
同一对象中绝对不应该出现2个同名属性名
Json数组也没有变量和分号
对象和数组通常是json数据结构的最外层形式(不是强制规定)
Json对象的两个方法stringify()和parse()
Stringify方法是把json转换成字符串格式(序列化,除了序列化js对象外还能接收两个参数:第一个参数是一个过滤器,可以使一个数组中也能是一个函数,第二个参数是一个选项,表示json字符串保留缩进),parse方法是把字符串转化成json格式(简称序列化)
Json中值为undefined的任何属性也会被跳过
toJSON方法返回自身的json数据格式,原生date对象又一个tojson方法,能够将date对象自动转化为ISO8601日期字符串(与date上的toISOString方法的结果完全一样)