eval方法可以将任何字符串参数(只能是字符串)重新运算
1.局部申明
eval(" var a = 1") // 不要用let const来申明变量
2.全局申明
window.eval("var a = 1")
3.返回值,如果eval(json)那么里面要再加一对括号;
写法一:let b = eval("(a =1)") // b =1
写法二:let b = eval("a =1") // b =1
4.解析json对象,记得加括号!!!
var orgJson = {"action": "register", "username": "13827200052", "psw": "2"};
var result = eval( "('" + orgJson +"')"); // 外面加一对括号,并且把json对象以字符串的形式传入
console.log("result="+result.action); // register
Brief summary:
1.传给eval的参数必须是字符串,该字符串可以是js表达式,也可以是申明
2.所有eval是局部的,而window.eval() 则是全局
3.想要返回值,给参数加括号 :var a = eval("(b = 2)");
4.注意在eval中不要用const let ,还不支持。