只有一个特殊的值,undefined (1) 声明一个变量,但没有赋值。变量默认为undefined (2) 函数中没有return。返回值默认为undefined var message; alert(message); //undefined alert(age);// error alert(typeof message);// undefined alert(typeof age);//undefined
对于未声明过的变量,只能执行一项操做,就是使用 typeof 检测其数据类型,而且返回undefined.其余操做都会报错。函数
只有一个特殊的值,null.null表示一个空对象指针。 typeof null "Object" typeof undefined "Undefined" null == undefined //true
两个值:true false
可是js中全部类型的值都有与这两个boolean值等价的值。
将一个值转换成布尔型,调用Boolean()函数。指针
各类类型向布尔型转换的结果以下: undefined:false。 null:转换成false。 字符串:空字符串,返回false;非空字符串,true. 数字型值:若是数字为0或NaN,返回false。;非0数字,false。 Object:true; 总结:非空字符串.非零数字转换为true.
一个特殊的数值:NaN.用于表示一个原本要返回数值的操做数 未 返回操做数的状况。code
两个特殊: (1)任何涉及NaN到NaN的操做运算,都会返回NaN (2)NaN与任何值都不相等,包括自己。 alert(NaN==NaN);//false 一个函数:isNaN() isNaN(NaN);//true isNaN(true);//false 能够被转换为1 isNaN(“10”);//false 能够被转换为数值10
三个函数:Number() parseInt() parseFloat()对象
Number()能够把任何类型转换为number类型。后两个专门把字符串转换为数值。 undefined:NaN null: 0 boolean: true:1;false:0 字符串: (1)字符串中只有数字,转换为十进制数值。 (2)字符串中有 浮点格式,会转换为响应的浮点数值。 (3)字符串中有 十六进制,转会为十进制。 (4)空字符串 转换为0. (5)其余格式的,转换为NaN Number()函数在转换字符串时,比较复杂。因此更经常使用的是parseInt函数。 parseInt()直至找到第一个非空格字符,若是第一个字符不是数字字符或者符号,直接返回NaN. 继续解析第二个字符,知道解析完全部后续字符或者遇到一个非数字字符。 parseInt("1234blue"); //1234 parseInt('');//NaN
转换为字符串: toString()方法 undefined.null不可使用此方法 boolean.number.string(返回一个字符串的副本) 均可以用此方法。 String()方法 能够将任何类型的值转换为字符串 String(null);//"null" String(undefined);//"undefined"
1.对象字面量
使用对象字面量定义对象时,实际上不会调用Object构造函数。字符串
var p = { name:"tom", age:29 };
2.构造函数string
function Person(){} var p = new Person();
constructor:能够知道一个对象是由哪一个构造函数建立的io
hasOwnproperty(属性名):检查属性是否在当前对象实例中function
isPrototypeOf(对象):变量
toLocaleString():返回对象的字符串表示构造函数
toString():返回对象的字符串表示
valueOf():返回对象的字符串、布尔值或数值表示。