转换为字符型:
三种方式:
1、toString()
用法:待转变量.toString()
注意:未定义类型不能使用这种方式, 会报错,并且一旦报错下面的程序将不运行。
2、String()
用法:String(待转变量)
3、+拼接 待转变量+'’或者+一个字符串;
注意:任何类型与字符串拼接均为字符串
// 转换为字符型
var num1=12;
var num2=23.2;
var flag1=false;
var flag2=true;
var ude;
// 第一种方式 toString()
console.log(num1);//数值型的在chrome里面显示蓝色
console.log(num1.toString());//字符型的在chrome里显示黑色
console.log(num2.toString());
console.log(typeof num2.toString());//string
console.log(flag1.toString());//false
console.log(flag2.toString());//true
// console.log(ude.toString());//报错,undefined不能用toString()方法
// 注意:一报错,下面的程序不会继续运行
console.log('---------------');
// 第二种方式 String()
console.log(String(num1));//12
console.log(String(num2));//23.2
console.log(String(flag1));//false
console.log(String(flag2));//true
console.log(String(ude));//underfined
console.log('---------------');
// 第三种方式 利用+拼接转换
console.log(num1+'');
console.log (flag1+'');//false
console.log(ude+'');//undefined
console.log('---------------');
转换为数值:
1、parseInt()
用法:parseInt(待转变量)
①转换为整数
②如果第一个字符不是数字符号或者负号,返回NaN
2、parseFloat()
用法: parseFloat(待转变量)
转换为浮点数
3、Number()
用法:Number(待转变量)
转换为整数或者小数
特殊情况:①里面只要出现非数字字符或者undefined, 则就返回 NaN
② 如果该值是空字符串、数字0、或null、false 则返回 0
如果是 true 则返回 1
4、隐式转换 待转变量 - 0; 或者 待转变量 * 1;
进行比较运算时,> < >= <=
数字才能比较大小,隐式地把其他类型转成数值型。
注意 +的特殊用法
// 转换为数值型
var str1='12.3';
var str2='0'
var str3='';
var str4='ab12';
var str5='123ab';
var flag1=true;
var flag2=false;
var ude;
// 第一种方法 parseInt()
console.log(parseInt(str1));//12
console.log(parseInt(str2));//0
console.log(parseInt(str3));//NaN
console.log(parseInt(str4));//NaN
console.log(parseInt(str5));//123
console.log(parseInt(flag1));//NaN
console.log(parseInt(flag2));//NaN
console.log(parseInt(ude));//NaN
console.log('---------------');
// 第二种方法 parseFloat()
console.log(parseFloat(str1));//12.3
console.log(parseFloat(str2));//0
console.log(parseFloat(str3));//NaN
console.log(parseFloat(str4));//NaN
console.log(parseFloat(str5));//123
console.log(parseFloat(flag1));//NaN
console.log(parseFloat(flag2));//NaN
console.log(parseFloat(ude));//NaN
console.log('---------------');
// 第三种方法 Number()
console.log(Number(str1));//12.3
console.log(Number(str2));//0 ② 如果该值是空字符串、数字0、或null、false 则返回 0
console.log(Number(str3));//0
console.log(Number(str4));//NaN 出现非数字字符回 NaN
console.log(Number(str5));//NaN 出现非数字字符回 NaN
console.log(Number(flag1));//1 如果该值是 true 则返回 1
console.log(Number(flag2));//0
console.log(Number(ude));//NaN
console.log('---------------');
// 第四种方法 利用算术运算实现了字符串到数字的类型转换
var str1='23';
var num=2;
console.log(str1+num); //232 +拼接,任何跟字符串相连的都会成为字符串
console.log(str1-num); //21
console.log('---------------');
转化为布尔型 Boolean()
代表 空、否定的值 会被转换为 false 有五种 “ ''、0、NaN、null、undefined
其余任何值都会被转换为 true
布尔型的隐式转换
(代码运行时,偷偷摸摸给转换了类型)
【A】进行逻辑运算时, && || !
两边是不是需要是布尔型,隐式地把其他类型转成布尔型。
【B】进行三元运算时
// Boolean 转换为布尔型 true false
// 1. 代表 空、否定的值 会被转换为 false 有五种 ''、0、NaN、null、undefined
console.log(Boolean(''));
console.log(Boolean(0));
console.log(Boolean(null));
console.log(Boolean(undefined));
console.log(Boolean(NaN));
// 2. 剩下的都是true
console.log(Boolean('12'));
console.log(Boolean(123));
网友评论