eval - 是否有充分的理由使用 eval()?

标签 eval

在我看来 eval()受到与 goto 相同的蔑视。由 eval ,我的意思是将字符串作为代码执行的函数,如在 PHP、Python、JavaScript 等中看到的。是否有使用 eval() 的情况?是否合理(除了 perl)?如果没有,为什么有这么多语言实现它?

最佳答案

是的 - 当没有其他方法可以以合理的清晰度和合理的代码行数完成给定的任务时。

这消除了 99% 的情况,其中 eval在所有语言和上下文中全面使用。

关于eval - 是否有充分的理由使用 eval()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1826859/

相关文章:

java - Java 中是否有与 Python 的 exec() 函数等效的函数?

ruby - 在 Ruby 的 class_eval 中将 block 传递到嵌套方法中?

javascript - 邪恶的评估+括号样本?

javascript - 你能在不使用 eval() 的情况下使用变量名来引用对象吗

python - 是否有类似反向 eval() 函数的东西?

shell - 使用 `eval` 用文件中的文本定义函数是邪恶的吗?

python - 在字符串上使用 eval 会引发错误。

python - 如何替换Python表达式中变量的值,但不计算表达式?

c# - 将 eval 传递给 javascript

javascript - 评估 JSON 字符串 - eval() 与 new Function()