JavaScript数字与字符串转换

Posted scooby

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript数字与字符串转换相关的知识,希望对你有一定的参考价值。

 

数字转字符串的方式:

1->数字调用toString方法转换为字符串.--num.toString().
2->数字作为形参调用String函数.--String(num).
3->利用javascript类型转换的默认属性,数字加上空字符串""或‘‘.
 
var num = 1234;
var str = num.toString();
var str = String(num);
var str = num + "";
var str = num + ‘‘;

字符串转数字的方式:

1->字符串作为形参调用Number函数.--Number(string).
注:
  •    |->该函数运行规则,从字符串开头逐个字符判断,当遇到小数点或者非数字时停止.直接返回NaN.该函数只能转换纯数字的字符串.
  •    |->JavaScript定义了全局变量NaN和Infinity.ECMAScript5修正了这个错误,将它们定义为只读的。
  •    |->NaN(Not a Number)是一个特殊的Number类型的数字,表示不是一个数.JavaScript中的非数字值都有一点特殊:它和任何值都不相等,包括自身。如判断变量x是否
  •          是NaN应当使用x!=x来判断,当且仅当x为NaN的时候,表达式的结果才为true。
  •    |->Infinity是一个特殊的Number类型的数字 表示无穷大的数.

 

2->字符串作为形参调用parseInt函数.--parseInt(string).
注:
    |->该函数运行规则,首先判断字符串开头是否为数字,非数字时会直接返回NaN,不再继续运行.否则从字符串开头逐个字符判断,当遇到小数点或者非数字时停止,返回前面读取的数字.
 
3->字符串作为形参调用parseFloat()函数.--parseFloat(string).
注:
  •   |->该函数运行规则,首先判断字符串开头是否为数字,非数字时会直接返回NaN,不再继续运行.否则从字符串开头逐个字符判断,当遇到第二个小数点或者非数字时才会停止,                                返回前面读取的数字.
  •       |->该函数为parsrInt的强化版.遇到第一个小数点时继续往后读取.
 
var str = "123456";
var num = Number(str); -->123456
var num = parseInt(str); -->123456
var num = parseFloat(str); -->123456
 
var str = "123aaa";
var num = Number(str); -->NaN
var num = parseInt(str); -->123
var num = parseFloat(str); -->123

 

var str = "123.45678.9aaa";
var num = Number(str); -->NaN
var num = parseInt(str); -->123
var num = parseFloat(str); -->123.45678

 

var str = "a123";
var num = Number(str); -->NaN
var num = parseInt(str); -->NaN
var num = parseFloat(str); -->NaN

以上是关于JavaScript数字与字符串转换的主要内容,如果未能解决你的问题,请参考以下文章

javascript字符串的转换

利用”+“”-“JS字符串类型与数字类型转换

JavaScript 隐式类型转换之:加号+

为啥 JavaScript 在连接时优先强制转换为字符串,而在比较时优先转换为数字?

javascript中的数据类型转换

Javascript:将字符串转换为数字?