typeof操作符
定义:返回一个用来表示表达式的数据类型的字符串。
说明:typeof 运算符把类型信息当作字符串返回。
原始类型: Number String Boolean(true,false) Null Undefined
Object 对象:function 函数 Array 数组 date 日期 等
数字(Number)类型
(基本的数值字面量格式都是十进制)
定义:用来表示整数和浮点数值,还有一种特殊的数值即NaN。
Eg: var x1=34.00; //使用小数点来写
var x2=34; //不使用小数点来写
整型(二进制、八进制、十进制、十六进制)
定义:不带小数点的数字。最多为17 位。 {八进制以0开头,后面的数值必须在0-7内,如果超出了范围,那么前导0就会被忽略,剩余的数值按十进制解析。 Eg:var num = 012;//10
var num2 = 090; // 90
十六进制是以0x开头,后面的数值范围则是0-f;
var num3 = 0xA;//10 var num4 = 0x1f; // 31 }
浮点型
定义:带小数点的数字,小数点后面必须至少有一位数字。小数的最大位数是 14。
数值范围 极大或极小的数字可以通过科学(指数)计数法来书写:
可以用isFinite()方法判断某个数值是否在最大值和最小值之间;
• var result = Number.MAX_VALUE +Number.MIN_VALUE ;
• alert(isFinite(result)); //false NaN(not a number)不是数字
定义:NaN 属性是代表非数字值的特殊值。该属性用于指示某个值不是数字。
可以把 Number 对象设置为该值,来指示其不是数字值。
特点: NaN本身有两个非同寻常的特点。
首先,任何涉及NaN的操作(例如NaN/10)都会返回NaN,这个特点在多步计算中有可能导致问题。
其次,NaN与任何值都不相等,包括NaN本身。
Eg:用 NaN 指示某个值是否是数字:
<script type="text/javascript">var Month=30;if (Month < 1 || Month > 12){Month = Number.NaN;}document.write(Month); </script>
Undefined 类型 (未定义)
定义:undefined 属性用于存放 JavaScript 的 undefined 值,表示一个未声明的变量,或已声明但没有赋值的变量,或一个并不存在的对象属性。
注意:undefined类型只有一个值,即特殊的undefined。
Eg: <script> var yycheckout; alert(yycheckout); </script>
Null类型 (空)
定义:null表示准备用来保存对象,还没有真正保存对象的值。
从逻辑角度看,null值表示一个空对象指针,所以当你使用typeof操作符检测null值时会返回”object”。
Eg:var car=null; alert(typeof(car));
注意:null类型是第二个只有一个值的数据类型。这个特殊的值是null。
Null 和 undefined 的区别:
null和undefined分属不同的类型,未初始化定义的值用typeof检测出来是"undefined"(字符串)
,而null值用typeof检测出来是"object"(字符串)。