JavaScript 类型转换

这里主要讲的是将其他的数据类型转换成Number、String、Boolean类型,欢迎补充~!

转换成Number类型

1. Number()函数,如: var a = "123"; a = Number(a); 

  1.1 如果是纯数字的字符串,则直接将其转换为数字;如果字符串中有非数字的内容,则转换为NaN;如果字符串是一个空串或者是一个全是空格的字符串,则转换为0

  1.2 true转换为1,false转换为0

  1.3 null转换为0;undefined转换为NaN

2. 专门用于字符串:parseInt()方法和parseFloat(),如: var a = "123567a567px"; var b = parseInt(a); var c = parseFloat(a); 

3. 为一个值 -0 、*1 、 /1来将其转换为Number,如: var a = '123'; var b = a-0; var c = a*1; var d = a/1; 

4. +一元运算符,可以对一个其他的数据类型使用+,来将其转换为number,如: var a = "18"; a = +a; 

5. -一元运算符,对于非Number类型的值,它会将先转换为Number,如: var a = true; a = -a; 

转换成String类型

1. toString()方法,如: var a = 123; a = a.toString(); 

  1.1 注意:null和undefined这两个值没有toString()方法,如果调用他们的方法,会报错

2. String()函数,如: var a = 123; a = String(a); 

3. +算术运算符,如: var a = 123; var b = a+''; 

  3.1 任何的值和字符串做加法运算,都会先转换为字符串,然后再和字符串做拼串的操作

  3.2 注意:任何值和NaN做运算都得NaN

转换成Boolean类型

1. Boolean()函数,如: var a = 123; a = Boolean(a); 

  1.1 值是数字时:除了0和NaN,其余的都是true

  1.2 值是字符串时:除了空串,其余的都是true

  1.3 null和undefined都会转换为false;对象会转为true

2. !逻辑运算符(对非布尔值进行运算,则会将其转换为布尔值,然后再取反),如: var a = 123;a = !a; 

3. !!逻辑运算符(对非布尔值进行运算,则会将其转换为布尔值,然后取反两次),如: var a = 123;a = !!a; 

原文地址:https://www.cnblogs.com/hiuman/p/12018498.html