美文网首页
关于eval

关于eval

作者: 树袋熊熊 | 来源:发表于2018-02-24 14:30 被阅读0次

很多规范说是eval is evil,自己也就人云亦云,没有深究过,但是到底eval是不是evil,看了P84页,其实我本人觉得eval还是不错,只不过有时候有些调皮吧了,当你掌握它的脾气的时候,在某些特定的场合下,应该还是蛮不错的。

避免eval的以下缺点,应该还是不错的东西

不要对eval赋予别名,通过别名调用eval时,会按全局来执行,会覆盖或定义新的全局变量和函数。
尽量在函数中使用eval,将其影响控制在当前函数内。
eval的性能问题,这个取决于实际应用场景

其实我们也可以使用Function构造函数去动态执行代码

var test = new Function(‘name, age’, ‘console.log(name, age)’);
test(‘hjzheng’, 30);

很喜欢知乎上的答案 https://www.zhihu.com/question/20591877

相关文章

  • 关于eval

    很多规范说是eval is evil,自己也就人云亦云,没有深究过,但是到底eval是不是evil,看了P84页,...

  • (1, eval)('this') eval('this')

    (1, eval)('this') eval('this') 两者有什么不同 (1,eval)和普通的eval函...

  • eval作用域

    输出 原因: (1,eval)是个表达式,;类似1&&eval,属于间接引用了eval; eval 只在被直接调用...

  • JS之eval()

    Javascript 之 eval() 语法 eval(string) 描述 eval()是一个顶级函数并且跟任何...

  • PHP代码执行

    Eval函数介绍 Eval函数的语法如下: eval ( string $code ) $code是字符串型变量,...

  • R|Rmarkown查漏补缺

    1. 代码块设置 核心函数:eval eval = TRUE,显示运行结果,默认值 eval = FALSE,不显...

  • python内置关键字

    eval eval(expression, globals=None, locals=None) --- 官方文...

  • python内置函数

    eval() eval(expression, globals=None, locals=None) expres...

  • 关于eval与new Function

    由一道题目引发的思考:eval能访问上下文,new Function只能构建自己的一个私有作用域。 new Fun...

  • 12.1、python内置函数——eval、exec、compi

    内置函数——eval、exec、compile eval()将字符串类型的代码执行并返回结果 print(eval...

网友评论

      本文标题:关于eval

      本文链接:https://www.haomeiwen.com/subject/pndmwttx.html