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