- A+
所属分类:Web前端
js数据类型转换与字面量
1. 转换为字符串
方式 | 说明 | 例子 |
---|---|---|
toString() | 转成字符串 | var num=1;alert(num.toString()) |
String()强制转换 | 转成字符串 | var num=1;alert(String(num)) |
加号拼接字符串 | 和字符串拼接的结果都是字符串 | var num=1;alert(num+'我是字符串') |
注:建议使用第三种转换方式,这种方式也称为隐式转换。
2. 转换为数字型
方式 | 说明 | 例子 |
---|---|---|
parseInt(string)函数 | 将string类型转成整数数值型 | parseInt('2233') |
parseFloat(string) | 将string类型转成浮点数数值型 | parseFloat('12.34') |
Number()强制转换函数 | 将string类型转成数值型 | Number('123') |
js隐式转换(- * /) | 利用算术运算隐式转换为数值型 | '123'-0 |
注:隐式转换是在进行算术运算时,js自动转换了数据类型。
//1.转成整数数值型 console.log(parseInt('120px')); //输出120,会自动去除px单位 console.log(parseInt('123abc')); //NaN //2.利用算术运算隐式转换 console.log('123'-0); //输出数值型的123 console.log('123'-'1'); //122 console.log('123'*1); //输出数值型的123
3. 转换为布尔型
方式 | 说明 | 例子 |
---|---|---|
Boolean()函数 | 其他类型转成布尔值 | Boolean('true') |
代表空、否定的值会被转换为false,如''、0、NaN、null、undefined,其余值都会被转换为true。
console.log(Boolean('')); //false console.log(Boolean(NaN)); //false console.log(Boolean('例子')); //true console.log(Boolean(1234)); //true
4. 字面量
字面量是一种创建值的方式。任何能够使用标识符的地方(即需要给定一个值的地方),都可以使用字面量。
var eg1 = "hello"; //"hello"是字符串字面量 var eg2 = 2233; //2233是数字字面量
注意区分字面量和标识符之间的区别
比如上面的例子,第一行代码创建了一个变量eg1,它的值为"hello",eg1是标识符。通过引号,js可以区分标识符和字面量(数字不需要引号,因为标识符不能以数字开头,所以遇到数字开头的都是字面量)。