JS基础强制类型转换

JS基础强制类型转换

一、总结

一句话总结:

转换为三种基本类型都有对应的直接方法,例如String()、Number()、Boolean(),还有其它的一些方法,比如+''转字符串,比如!!a转boolean

1、js强制转换为string的方法?

方式一:调用xxx的yyy()方法,就是xxx.yyy():例如 var b=a.toString();
方式二:调用String()函数,并将转换的数据作为参数传给函数:例如a=String(a);
方式三:+''

2、js强制转换为Number类型?

方式一:使用Number()函数
方式二:parseInt() parseFloat() 专门用来对付字符串

3、js强制转换为Boolean类型?

使用Boolean()函数:例如 a=Boolean(a);

4、js使用Number()函数转换注意?

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

5、js使用Boolean()函数注意点?

除了0、NaN、空串、null、undefined其余都是true。对象也会转换为true

二、JS基础之强制类型转换_每文的博客-CSDN博客

转自或参考:JS基础之强制类型转换_每文的博客-CSDN博客
https://blog.csdn.net/qq_41999617/article/details/81174185

类型转换主要指,将其他数据类型转换为(String、Number、Boolean)

转换为string:

方式一:调用xxx的yyy()方法,就是xxx.yyy()

var a=123;

a.toString();

console.log(a); 结果:123

该方法不会影响到原来的变量,它会将转换的结果返回

var b=a.toString();

console.log(b); 结果:"123"

注意:null和undefined两个值没有toString()方法

方式二:调用String()函数,并将转换的数据作为参数传给函数

var a=123;

a=String(a);

console.log(a); 结果:"123"

使用String()函数做强制类型转换时,对于Number和Boolean实际上就是调用的toString()方法,但是对于null和undefined就不调用toString(),它会将null直接转换为“null”。

转换为Number:

方式一:使用Number()函数

var a="123";

a=Number(a);

console.log(typeof a); 结果:number

如果:

var a="abc";

a=Number(a);

console.log(a); 结果:NaN

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

Number(true)="1" Number(Null)=0 Number(undefined)="NaN"

方式二:parseInt() parseFloat() 专门用来对付字符串

var a = "123px";

a=parseInt(a);

console.log(typeof a); 结果:number

console.log(a); 结果:123

var b=true;

b=parseInt(b);

console.log(typeof b); 结果:number

console.log(b); 结果:NaN

如果对非string使用parseInt()或parseFloat()它会先将其转换为string,然后再操作。

转换为Boolean:

使用Boolean()函数

var a= 123;

a=Boolean(a);

console.log(typeof a); 结果:boolean

console.log(a); 结果:true

除了0、NaN、空串、null、undefined其余都是true。对象也会转换为true

原文地址:https://www.cnblogs.com/Renyi-Fan/p/12324831.html