首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >评估函数,评估后的性能

评估函数,评估后的性能
EN

Stack Overflow用户
提问于 2010-08-05 17:52:32
回答 1查看 126关注 0票数 1

我们都知道代码:

代码语言:javascript
复制
var ssum = function(a,b) { return a+b; } 

的执行速度比

代码语言:javascript
复制
eval("var esum = function(a,b) { return a+b; } ");

原因有很多。

我想知道的是,如果一个函数是通过计算一个字符串而创建的,如果它没有这样做,那么它的性能是否会比a更差。

对于上面的例子,它意味着: esum(1,1)会比ssum(1,1)慢吗?

我想要一个答案,告诉我这是否取决于浏览器实现(如果是,为什么),以及性能是否取决于eval-ed函数引用的变量。

非常感谢,Lx

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-08-05 18:04:34

一旦对js代码求值,它就会转换成javascript ("javascript本地“或”编译“)代码(在您的例子中。情况并不总是这样,因为eval计算一个表达式,结果可以是一个数字)。

在那之后,它们都是普通的javascript对象(函数或其他),所以两者之间应该没有区别。

即使是ECMA-262规范(第10.4.2节)也没有讨论这种情况。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3413550

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档