js数据类型

2017-03-10  本文已影响0人  土豪码农

js中的数据类型有两种,一种是基本(简单)数据类型 ,
还有一种是复杂(复合,引用)数据类型;

简单数据类型

复杂(复合)数据类型

如何判断数据类型 typeof

  *  undefined和is not defined,前者是声明不赋值,后者是不申明
    var a;
    console.log(typeof b); //undefined
    console.log(typeof a); //undefined

instanceof

    console.log([] instanceof Array);  //true
    console.log(new String('2') instanceof String); //true
    console.log(new Number(2) instanceof Number);  //true
    console.log(new Boolean(true) instanceof Boolean);  //true
    console.log(function fn() {} instanceof Function);  //true
    //通过toString
    console.log([].toString()); //数组的toString等于join(',')会用逗号连接里面每个元素
    console.log(({}).toString());  //对象的toString则是显示对象类型[object Object]
    //通过借用Object上面的toString
    console.log(Object.prototype.toString.call([])); //[object Array]
    console.log(Object.prototype.toString.call({})); //[object Object]
    //查看length
    console.log([].length); //0
    console.log({}.length); //undefined
    console.log(Object.prototype.toString.call([]));  //[object Array]
    console.log(Object.prototype.toString.call({}));  //[object Object]
    console.log(Object.prototype.toString.call(function () {}));  //[object Function]
    console.log(Object.prototype.toString.call(new String('a')));  //[object String]
    console.log(Object.prototype.toString.call(new Number(1)));  //[object Number]
    console.log(Object.prototype.toString.call(new Boolean(true)));  //[object Boolean]

上一篇 下一篇

猜你喜欢

热点阅读