转换任何字符串,如" 10"," -0.129894"," 12.02102"编号而不添加或丢失任何东西

时间:2016-03-17 11:40:53

标签: javascript

从标题中可以看出,我有各种可以包含数字的字符串的情况。我发现使用parseInt()parseFloat()对我来说不起作用,因为parseInt会将10.28之类的数字转换为10,但是parseFloat会将10之类的数字转换为10.0,我想以某种方式转换字符串数字,因此它保持与字符串中的字符串完全没有删除或添加任何内容。

1 个答案:

答案 0 :(得分:0)

每个MDN NumberMSDN页面,但不是那么多信息)。 在页面顶部:

  

数字对象的主要用途是:

     
      
  • 如果参数无法转换为数字,则返回NaN
  •   
  • 在非构造函数上下文中(即没有new运算符),Number可用于执行类型转换。
  •   

在页面底部,有一些例子:

Convert numeric strings to numbers

Number("123")     // 123
Number("")        // 0
Number("0x11")    // 17
Number("0b11")    // 3
Number("0o11")    // 9
Number("foo")     // NaN
Number("100a")    // NaN

演示https://jsfiddle.net/hxkfafdw/

有关该主题的更多信息 - Number("foo")NaN Number("f00") - 相同。 Number("0xf000") - 这是一个十六进制数字。