8

它在每个计算机科学课程中都有讲授,并且写在许多程序员不应该使用 GoTo 的书籍中。甚至还有关于它的xkcd漫画。我的问题是我们是否达到了可以对 Eval 说同样的话的地步?

GoTo 不利于程序流程和可读性,而 Eval 则同样适用于调试、程序执行和设计。

使用 Eval 是否应该与 GoTo 具有相同的污名,以及与 xkcd 漫画中相同的后果?

4

5 回答 5

7

如果有的话,它应该带有更多的耻辱感。

GoTo 经常创建难以维护的代码。Eval 经常创建带有安全漏洞的代码——这更糟。

于 2010-04-09T15:01:26.010 回答
2

Eval 有一些相当严重的安全问题;如果有任何机会不受信任或用户提供的输入最终会出现在 eval 中,那么它很容易受到攻击。

Jslint 将警告在通过它运行的 js 代码中使用 eval()。

于 2010-04-09T15:01:19.627 回答
1

可能是 eval 没有达到 GoTo 所达到的批评水平,但肯定它已被弃用!

于 2010-04-09T14:59:27.853 回答
1

有人发表“Eval 被认为是邪恶的”文章只是时间问题!

于 2010-04-09T15:00:49.003 回答
0

“妈妈的利用”间接涵盖了 eval - 由于缺乏适当的检查,系统运行恶意代码。

于 2010-04-25T03:55:05.953 回答