首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Number.isInteger方法与Node.js版本

Number.isInteger方法与Node.js版本
EN

Stack Overflow用户
提问于 2016-10-06 15:46:58
回答 3查看 2K关注 0票数 3

使用Node.js 4.5.0我得到了预期的行为

代码语言:javascript
运行
复制
> console.log(Number.isInteger(42))
true

但是使用Node.js 0.10.36我得到了错误

代码语言:javascript
运行
复制
> console.log(Number.isInteger(42))
TypeError: Object function Number() { [native code] } has no method 'isInteger'

我如何知道使用Node.js方法所需的最低版本的Number.isInteger

在查看Node.js CHANGELOG 文件之后,我找不到任何相关的信息。

编辑1:node.green显示Node.js 0.12.16支持该方法。

编辑2:我也无法在V8 变化量g中找到任何相关信息。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-10-06 16:12:58

正如他们在文档中推荐的那样,Number.isInteger是0.12.16版的支持。尽管这不是最低版本,可能是0.12.3,它使用相同的v8引擎版本

编辑1:在这个提交中发布了V8 3.24.11,但是Node.js只使用了版本 0.11.13中的V8 3.25.30.0。此外,我还进行了一些测试(在Xubuntu 16.04中):

Node.js v0.11.13 (V8 3.25.30.0)

代码语言:javascript
运行
复制
> Number.isInteger(42)
true

Node.js v0.11.12 (V8 3.22.24.19)

代码语言:javascript
运行
复制
> Number.isInteger(42)
TypeError: Object function Number() { [native code] } has no method 'isInteger'
    at repl:1:8
    at REPLServer.defaultEval (repl.js:130:27)
    at bound (domain.js:255:14)
    at REPLServer.runBound [as eval] (domain.js:268:12)
    at REPLServer.<anonymous> (repl.js:277:12)
    at REPLServer.EventEmitter.emit (events.js:104:17)
    at REPLServer.Interface._onLine (readline.js:202:10)
    at REPLServer.Interface._line (readline.js:531:8)
    at REPLServer.Interface._ttyWrite (readline.js:806:14)
    at ReadStream.onkeypress (readline.js:101:10)

注意,在Node.js v0.11.12中,V8 3.22.24.19低于3.24.11,即当它们已添加 Number.isInteger时。因此,总之,Node.js v0.11.13是具有方法“isInteger”的最小版本。

票数 4
EN

Stack Overflow用户

发布于 2016-10-06 23:06:58

Number.isInteger()是在V8 3.26.30中添加的(参见提交指出的这里),因此支持该方法的最小版本Node.js是0.12.0

票数 1
EN

Stack Overflow用户

发布于 2016-10-06 15:48:21

Number.isInteger()在ES6中定义;它需要一个实现ES6的节点版本。

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

https://stackoverflow.com/questions/39900420

复制
相关文章

相似问题

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