楚子沦i 发表于 2021-9-27 09:37

javascript中的eval方法有什么用?

在看书的时候,看到一段话是说eval()方法可能是整个ECMAScript语言中最强大的了。

但是为啥我没觉得有什么强大的地方呢?
我看他的功能就是将参数当作JavaScript的代码执行出来,那么我直接写JavaScript代码不行么?为什么要用eval呢,求大佬指点一下。

asdnasiudn 发表于 2021-9-27 10:00

他可以动态执行,比如有些逻辑可能你不想写死在 js文件里面,你就可以用eval,把真正的js代码从接口返回再执行,而从接口返回的js代码就可以是 动态的

ltzxd 发表于 2021-9-27 10:05

eval可以注入。

宅の士 发表于 2021-9-27 10:07

本帖最后由 宅の士 于 2021-9-27 10:09 编辑

等你开发多了 遇到相关场景时你就知道eval很有用了 不过现在大多用框架 当你用的很香的方法时 内部就用了eval也许你都不知道

zzzxxxccc 发表于 2021-9-27 10:14

来自MDN的描述: eval永远不要使用 eval!!

zhanglei1371 发表于 2021-9-27 11:14

一个简单的示例:
将字串"1+2"变为3
将字串"strA"变为可以引用的变量;
尤其被其他语言调用时,传递变量进来非常有用。

无阻 发表于 2021-9-27 11:38

可以作为动态代码。对于一些程序热更新很爽

楚子沦i 发表于 2021-9-27 12:21

asdnasiudn 发表于 2021-9-27 10:00
他可以动态执行,比如有些逻辑可能你不想写死在 js文件里面,你就可以用eval,把真正的js代码从接口返回再 ...

噢噢,原来如此

JuncoJet 发表于 2021-9-27 13:37

脚本语言都支持这个 js python vb

mokson 发表于 2021-9-27 13:53

页: [1] 2
查看完整版本: javascript中的eval方法有什么用?