eval详解

eval()的作用

把字符串参数解析成js代码并运行,并返回执行的结果;

eval的作用域

作用域在它所有的范围内容有效

IE8及以下指向window

解决方法:

  1. functiona(){  
  2.  if(window.execScript){ // 支持IE8及以下的版本  
  3.   window.execScript("var x=1");  
  4.  }  
  5.  else{ //常用的浏览器都支持  
  6.   window.eval("var x=1");  
  7.  }  
  8.  console.log(x);  
  9. }  
  10. a();  
  11. console.log(x);

注意事项

应该避免使用eval,不安全,非常耗性能(2次,一次解析成js语句,一次执行)。

原文地址:https://www.cnblogs.com/moneyss/p/7016221.html