eval()
最新更新: 2019-08-26 15:10:32
阅读: 36次
定义和用法
eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。
语法
eval(string)
参数 | 描述 |
---|---|
string | 必需。要计算的字符串,其中含有要计算的 JavaScript 表达式或要执行的语句。 |
返回值
通过计算 string 得到的值(如果有的话)。
说明
该方法只接受原始字符串(而不是变量)作为参数,如果 string 参数不是原始字符串,那么该方法将不作任何改变地返回。因此请不要为 eval() 函数传递 String 对象来作为参数。
如果试图覆盖 eval 属性或把 eval() 方法赋予另一个属性,并通过该属性调用它,则 ECMAScript 实现允许抛出一个 EvalError 异常。
eval()函数常用于将json字符串解析为json对象。
//代码段2 var foo = 1; function test() { var foo = 2; var bar = eval; //这里将bar变量指向了eval函数的引用 bar('foo = 3'); return foo; } test(); // 2 foo; // 3
eval 只在被直接调用并且调用函数就是 eval 本身时,才在当前作用域中执行
eval()函数常用于将json字符串解析为json对象。
var jsonStr = "{'name':'bossLiu','age':27}"; alert(jsonStr.name); //undefined var jsonObject = eval("("+jsonStr+")"); alert(jsonObject.name); //bossLiu