首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么‘non’对非字符串有效?

为什么‘non’对非字符串有效?
EN

Stack Overflow用户
提问于 2012-03-10 17:17:10
回答 1查看 109关注 0票数 3

我在玩eval,注意到它可以评估Chrome、Firefox和Opera中的非字符串:

代码语言:javascript
复制
eval(Array) === Array; // true
eval(this) === this;   // true
eval(4 * 3 / 2) === 6; // true

这是一种标准行为吗?有任何记载吗?除了字符串参数之外,我找不到任何提到eval的地方。

如果这不是一种标准行为,那么有人能识别出不起作用的主机环境吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-10 17:19:38

在没有字符串的情况下,代码已经在较低的级别上进行了计算,即在传递给eval之前(例如,您的最后一条语句只是在执行eval(6))。任何函数都是这样的;这是计算JavaScript代码的方法。从这个意义上说,eval并不神奇,因为它“只是”一个“只是”接受一个论点的函数。

当传递非字符串的am表达式时,eval应该返回什么?

  1. 如果Type(x)不是字符串,则返回x
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9648465

复制
相关文章

相似问题

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