gpt4 book ai didi

javascript - 'Number.parseInt()'、 'Number.parseFloat()'、 'Number()' 或 '+' 之间的关键区别是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:11:12 28 4
gpt4 key购买 nike

这里的基本问题是我怎么知道什么时候使用和

它们之间的关键区别是什么:

  • Number.parseInt 方法(或只是parseInt),
  • Number.parseFloat 方法(或只是 parseFloat),
  • Number() 函数(或类?),
  • + 运算符

用于将 JavaScript 值(主要是 String)转换为数字。

特别是因为它们都提供相似的值并且可以将 String 转换为其 Number 表示形式:

Number.parseInt("2")   // returns 2
Number.parseFloat("2") // returns 2
Number("2") // returns 2
+"2" // returns 2

/* Plus a few more methods... */
eval("2") // returns 2
JSON.parse("2") // returns 2

最佳答案

  • Number.parseInt 方法(或只是parseInt)

    • 忽略前导和尾随空格
    • 将前导数字解析为整数(不是 float )
    • 忽略无效的尾随数据
    • 让您设置解释数字时要使用的基数
    • 如果未提供其他基数,则将以 0x 开头的文本解释为十六进制
    • 如果无法将值成功解析为整数,则返回 NaN
  • Number.parseFloat 方法(或只是parseFloat)

    • 类似于parseInt,除了它允许解释小数部分
    • 只解析为 base-10
  • Number() 函数(或类?)

    • 类似于parseFloat,但不允许尾随文本
    • 将为空字符串或仅包含空格的字符串返回0
    • 这不是一个类;在没有new的情况下调用时,它返回一个原始数字
  • + 运算符

    • Number() 基本相同,但采用运算符形式。
  • eval()

    • 将给定的输入解释为 JavaScript 程序并执行。
    • 给定字符串 "2",它将被解释为数字文字,并返回该值,因为它是程序中最后一个表达式的结果
    • 如果输入的程序无效,则抛出错误。
  • JSON.parse()

    • 将文本数据解析为 JSON 序列化数据。
    • 如果数据有效,它会创建由数据表示的 JavaScript 对象/基元,并返回它们。
    • 如果数据无效,则会抛出错误。
    • 给定字符串"2",将其解释为数字字面量,并根据JSON的解析要求返回成功解析出的值。

因此,您可以根据他们的能力来决定使用哪个。

关于javascript - 'Number.parseInt()'、 'Number.parseFloat()'、 'Number()' 或 '+' 之间的关键区别是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46621185/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com