JS数据类型转换 - 数字转换

把一种数据类型转换成另外一种数据类型,js支持把任意一种数据转换成以下类型  数字,字符串,布尔值。对象转成这三种数据是没有意义的,因为对象里面可以放任意一种数据类型。

 

今天先介绍一下数字转换。那么我们先看看各数据类型转换的情况

任意类型转数字

Number(要转换的值)   把任意类型都转成数字

1、Undefined 转数字的结果NaN

2、Null 转数字的结果0

3、Boolean true转换为1  false转换为0

4、String    空字符串空格字符串转数字的结果为0,字符串里如果是一个纯数字的话,转换为对应的数字,如果不是一个非纯数字,结果为NaN

5、Number 数字转数字的结果还为原来的数字

6、Object          空数组转数字的结果为0空对象NaN

var u1 = undefined;
console.log(Number(u1));  //NaN
            
var u2 = null;
console.log(Number(u2));   //0
            
var u3 = true;
var u4 = false;
            
console.log(Number(u3));  //1
console.log(Number(u4));  //0
            
var u5 = '';
console.log(Number(u5)); //0
            
var u6 = ' ';
console.log(Number(u6));
            
var u7 = 'sog';
console.log(Number(u7));  //NaN
            
var u8 = "012"
console.log(Number(u8));  //12
            
var u9 = "12a"
console.log(Number(u9)); //NaN
            
var u10 = "12*12"
console.log(Number(u10)); //NaN
            
var u11 = {}
console.log(Number(u11));// NaN
            
var u12 = []
console.log(Number(u12));  //0

 

当然除了Number() 这个方法 还有另外两种方法: parseInt()  , parseFloat();

paresInt(要转换的值) 把字符串转成整数

paresFloat(要转换的值) 把字符串转成浮点型(带小数)数字

规则: 传进来的字符串必须是数字或者空格加数字开头,它会从数字开始,一位一位往后找,直到找到的字符不是数字就会停止,会把找到的数字字符转成真正的数字。如果没找到那就返回一个NaN 。

var s1 = "100px"
console.log(parseInt(s1));  //100
var s2 = "  100px"
console.log(parseInt(s2));  //100
var s3 = 'px100 ';
console.log(parseInt(s3));  //NaN
var s4 = "100.256rem247";
console.log(parseFloat(s4)); //100.256
var s5 = '01234';
console.log(parseInt(s5));  //1234

 

Pritce:

1、数据类型转换,转数字有几种方法?

2、对象转成数据类型是什么情况?

3、字符串转成数字会有哪几种情况发生?

posted on 2017-08-16 15:18  宋王爷  阅读(164)  评论(0)    收藏  举报

导航