ECMAScript 2021 中的 Number.parseInt 和 Number.parseFloat

ECMAScript 2021 中的 Number.parseInt 和 Number.parseFloat

在前端开发中,我们经常需要将字符串转换成数字。在 JavaScript 中,我们通常使用 parseInt 和 parseFloat 函数来将字符串转换成整数和浮点数。

ECMAScript 2021 中,Number 对象增加了两个新的方法:Number.parseInt 和 Number.parseFloat。他们的作用和 parseInt 和 parseFloat 函数相同,都是将字符串转换为数字。

Number.parseInt

Number.parseInt 函数是将字符串转换为整数的方法。它的使用方法和 parseInt 函数一样,只是它是一个 Number 对象的静态方法。其语法如下:

----------------------- ------

其中,string 是要转换的字符串,radix 是转换的进制数。如果不传递 radix 参数,则默认为 10 进制。

Number.parseInt 函数和 parseInt 函数最大的区别在于,parseInt 是全局函数,而 Number.parseInt 是 Number 对象的静态方法,也就是说,我们可以直接使用 Number.parseInt 而不需要先创建 Number 对象。

示例代码:

------------------------------------ -- ---
------------------------------------ -- ---
----------------------------------- ---- -- -
--------------------------------- ----- -- ---

在示例代码中,第一个 parseInt 转换了一个十进制的字符串,返回了对应的整数值,第二个 parseInt 转换了一个非数字的字符串,返回了 NaN。第三个 parseInt 转换了一个二进制的字符串,返回了对应的十进制整数值,第四个 parseInt 转换了一个十六进制的字符串,返回了对应的十进制整数值。

Number.parseFloat

Number.parseFloat 函数是将字符串转换为浮点数的方法。它的使用方法和 parseFloat 函数一样,只是它是一个 Number 对象的静态方法。其语法如下:

-------------------------

其中,string 是要转换的字符串。

与 Number.parseInt 一样,Number.parseFloat 是 Number 对象的静态方法,也就是说,我们可以直接使用 Number.parseFloat 而不需要先创建 Number 对象。

示例代码:

--------------------------------------- -- ----
-------------------------------------- -- ---
-------------------------------------- -- ----
------------------------------------------ -- ----

在示例代码中,第一个 parseFloat 转换了一个浮点数的字符串,返回了对应的浮点数值,第二个 parseFloat 转换了一个非数字的字符串,返回了 NaN。第三个 parseFloat 转换了一个科学计数法表示的字符串,返回了对应的浮点数值,第四个 parseFloat 转换了一个带有非数字部分的字符串,返回了对应的浮点数值。

总结

在 ECMAScript 2021 中,Number 对象增加了 Number.parseInt 和 Number.parseFloat 两个方法。它们和 parseInt 和 parseFloat 函数作用相同,用于将字符串转换为数字。和全局函数 parseInt 和 parseFloat 相比,Number.parseInt 和 Number.parseFloat 需要通过创建 Number 对象来调用,但它们更加直观,也避免了全局函数被污染的问题。在实际开发中,我们可以根据不同的需求来选择使用不同的方法。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/66448b39d3423812e42739a6