5种简单的数据类型:Undefined,Null,Boolean,Number,String。
typeof 操作符
var message="some string";
alert(typeof message);//string
alert(typeof(message));//string
alert(typeof 95);//number
alert(typeof null);//object
注意:typeof是一个操作符而不是函数。
Undefined类型
var message;
alert(message==undefined);//true
等价于
var message=undefined;
alert(message==undefined);//true
包含undefined值的变量与尚未定义的变量还是不一样的。
Null类型
if(car!=null){
//对car对象执行某些操作
}
alert(null==undefined);//true
Boolean类型
注意:Boolean类型的字面值true,false是区分大小写的。
Number类型
八进制字面值的第一位必须是零(0),然后是八进制数字序列(07)。
十六进制字面值的前两位必须是0x,后跟十六制数字(09及A~F)。
NaN(即非数值) isNaN()函数确定这个参数是否“不是数值”。 toFixed() 方法会按照指定的小数位返回数值的字符串来表示。
var num=10;
alert(num.toFixed(2));//10.00
toExponential() 返回指数表示法
var num=10;
alert(num.toExponential(1));//1.0e+1
toPrecision() 方法可能会返回固定大小格式,可能返回指数格式。
var num=99;
alert(num.toPrecision(1));//1e+2
alert(num.toPrecision(2));99
alert(num.toPrecision(3));99.0
数值转换
Number(),parseInt(),parseFloat().
这三个的转换规则都不一样。
parseInt()和parseFloat()方法只转换第一个无效字符之前的字符串。如“3.4.5”被转换成“3.4”,用Number()进行强制类型转换将返回NAN,如果字符串值能被完整地转换,Number()将判断是调用parseInt()还是parseFloat()。
String类型
用于连接两个字符串。 toString()可以输出以二进制,八进制,十六进制,乃至其他任意有效进制格式表示的字符串值。
var num=10;
alert(num.toString());//10
alert(num.toString(2));//1010
alert(num.toString(8));//12
alert(num.toString(10));//10
alert(num.toString(16));//a
字符方法 charAt() 和 charCodeAt() 基于0的字符位置。 charAt() :以单字符字符串的形式返回给定位置的那个字符。
var stringValue="hello world";
alert(stringValue.charAt(1));//e
var stringValue2="hello world!";
alert(stringValue2.charCodeAt(1));//e的字符编码 101
字符串操作方法 concat() 拼接多个字符串。和+(加号)作用一样,不改变原字符串
var stringValue="hello ";
var result=stringValue.concat("world");
alert(result);//hello world
alert(stringValue);//hello
slice() 和substring() 第一个参数指定字符串的开始位置,第二个参数指定的是子字符串最后一个字符串后面的位置。
substr() 第一个参数指定字符串的开始位置,第二个参数指定的是子字符串的长度。
var stringValue="hello world";
alert(stringValue.slice(3));//lo world
alert(stringValue.substring(3));//lo world
alert(stringValue.substr(3));//lo world
alert(stringValue.slice(3,7));//lo w
alert(stringValue.substring(3,7));//lo w
alert(stringValue.substr(3,7));//lo worl
如果传递的参数是负值的话,slice() 方法会将传入的负值与字符串的长度相加,substr() 方法将负的第一个参数加上字符串的长度,将负的第二个参数转换为0,substring() 方法会把所有负值参数都转换为0。