7、运行时求值

用eval()方法进行求值

eval()方法将执行传入的代码的字符串,并在调用eval()方法的作用域内进行代码求值,最后返回传入字符串中最后一个表达式的执行结果。

console.log(eval("5 + 5"));  // 10
eval("var a = 5;");
console.log(a);  // 5

// 仅在调用eval()方法的作用于内进行求值
(function () {
    eval("var a = 6");
    console.log(a);  // 6
})();
console.log(a);  // 5

// 返回最后一个表达式的执行结果
var b = eval("3+4; 5+6");
console.log(b); // 11

在全局作用域内求值操作

eval()方法求值的作用域就是调用eval()时的作用域,要让代码字符串在全局作用域内进行求值,可以将代码字符串放在动态生成的

你可能感兴趣的:(7、运行时求值)