在js中有几种重要的数据类型,我们需要掌握各种数据类型的特点,以及它们之间的转换。
- 基本数据类型:
(1)undefined:在使用var 声明但未进行初始化,这个值就是undefined,只有一个值undefined。
(2)Null:表示一个空对象指针,只有一个值null。
(3)Number:数字类型。
(4)String:字符串。
(5)Boolean:布尔类型,有两个值true和false。 - 各种类型的转换。
- 数值转换:各种类型非数值转换为数值有两个函数。
(1)Number():可用于任何数据类型,转换规则:
console.log(Number(null));//0
将null转为0;
console.log(Number(undefined))//NaN
将undefined转为NaN;
console.log(Number(false));//0
将boolean的fasle转为0;
console.log(Number(true));//1
将boolean的true转为1
console.log(Number(""));
将空字符串转为0;
console.log(Number("123blue"));//NaN
将不是纯数字的字符转为NaN;
(2)parseInt():只用于字符串的转换。
console.log(parseInt(""));//NaN
将空字符串转为NaN
console.log(parseInt("123blue"))//123
第一个是数字字符,直到解析到后续字符,或者遇到一个非数字字符。 - 字符串转换:有两种方式toString()和String()
(1)toString():返回相应值得字符串表现,但是null和undefined没有这个方法。
var num=true;
console.log(true.toString());//true
var num=10;
console.log(num.toString(2))//1010
可以传入参数,指定基数,可以是二进制、十进制、八进制、十六进制
(2)String():能将任何类型的值转换为字符串。
var num=null;
console.log(String(num));//null
var num=undefined;
conole.log(String(num));//undefined
- 数值转换:各种类型非数值转换为数值有两个函数。
- 字符串中的方法:
(1)indexOf:获取字符所在的位置。
var str='abcde';
str.indexOf('b')//1;
(2)toLowerCase():转化为小写;
var str='ABC';
str.toLowerCase();//abc
(3)toUpperCase():转换为大写;
var str='abcde';
str.toUpperCase();//ABCDE;
(4)trim:删除两边字符
var str=' ing f ';
str.trim();//'ing f';
(5)replace:字符串替换
var str='ing'
str.replace('g','G');//inG.