//使用方式
//parseInt(), parseFloat()
//使用情况
//1. 字符串---->只要最高位为数字则会转换为数值(一旦遇到字符会立即停止向右查找,直接返回字符左边的),否则转换为NaN
//2. 其他---->NaN
//以parseInt()为例,parseFloat()同理,
var num = parseInt("123a");//结果为:"num=123, typeof=number", 方式1的测试
num = parseInt("123a123");//结果为:"num=123, typeof=number", 方式1的测试
num = parseInt("a123");//结果为:"num=NaN, typeof=number", 方式1的测试
num = parseInt(true);//结果为:"num=NaN, typeof=number", 方式2的测试
//其他情况略......
console.log("num=" + num + ", typeof=" + typeof num);
String:
//对应引用数据类型的隐式转换,直接调用toString()方法
var arr = ["www", "imooc", "com"];//定义数组
// arr = arr.join(".");//数组间的元素通过.连接成一个字符串
console.log(arr.toString());//"www,imooc,com"
Boolean:
//使用方式
//new Boolean();
//同样地,定义一个函数
function fnIsObviousBool(iValue) {
var bool = new Boolean(iValue);
console.log("bool=" + bool + ", typeof=" + typeof bool);
}
Number----> Boolean:
fnIsObviousBool(0);//false
fnIsObviousBool(0.0);//false
fnIsObviousBool(NaN);//false
fnIsObviousBool(1);//true
String----> Boolean:
fnIsObviousBool("");//false
fnIsObviousBool("imooc");//true
Null----> Boolean:
fnIsObviousBool(null);//false
Undefined---->Boolean:
fnIsObviousBool(undefined);//false
总结一下:与隐式转换一样,也有6种情况为false, 其他情况都为true