日期:2014-05-16  浏览次数:20420 次

学习JavaScript---数据类型
一、原始类型:
1、Undefined类型只有一个值------undefined
2、Null类型只有一个值----------null
undefined是从null派生而来。因此undefined == null
3、Boolean类型有两个值----true,false
false == 0, true == 1 是成立的。
4、Number类型
既可以表示32位的整数(也可以是八进制或者十六进制,八进制首字母必须是0,其后接0-7,例如 var iNum = 020;十六进制必须首字母为0,其后接字母x,再以后为0-9和A-F,例如 var iNum = 0x1f),也可以表示为64位的浮点数。直接输入的任何数字都被看做Number型的字面量,例如 var iNum = 23; var fNum = 1.0;
也可用科学计数法表示浮点值,例如:var fNum = 3.125e7;
Number的外边界值---Number.MAX_VALUE,Number.MIN_VALUE
当计算生成的值>MAX_VALUE时,它将被赋予值Numer.POSITIVE_INFINITY--Infinity
当计算生成的值<MIN_VALUE时,将被赋予值Number.NEGATIVE_INFINITY-- -Infinity
判断一个数是否是有穷的可调用函数isFinite(200);
NaN表示“非数”,当将其他类型转换为Number类型失败时就变成这个特殊值了。他与自身不相等,意思就是 NaN == NaN 返回的是false,所以不推荐数使用它,可用isNaN函数
5、String类型的独特之处在于它是唯一没有固定大小的原始类型。""及''来声明。
二、转换方法
Boolean,Number,String都是伪对象。这说明他们实际上具有属性和方法。
1、ECMAScript定义所有的对象都具有toString方法,包括String类型。Boolean类型的toString:直接输出false或者true
Number类型的toString:
var iNum = 10; iNum.toString();(十进制)
var iNum = 10; iNum.toString(2);(二进制)
iNum.toString(8);(八进制)iNum.toString(10);(十进制)
iNum.toString(16);(十六进制)
String还具有length属性。
2、String可调用parseInt()与parseFloat()将非Number类型的数值转变为Number。除了String其他类型调用这两个方法都将返回NaN。
parseInt方法从0位置开始检测,如果为数字则转换为数字(如果为多进制数字则能成功转换),否则就停止检测,例如:
var iNum1 = parseInt("1234pop");//1234
var iNum2 = parseInt("0xA");//10
var iNum3 = parseInt("22.5");//22
var iNum4 = parseInt(false);//NaN
var iNum5 = parseInt("hh");//NaN
基模式:var iNum6 = parseInt("AF",16);//16进制的值--175
对于:var iNum7 = parseInt("010");会默认转换为8进制。