var Foo = function() {} var foo = new Foo; console.log(foo.__proto__ === Foo.prototype) // true console.log(Foo.__proto__ === Function.prototype) // true
js类型以及类型判断 |
js类型与类型检测
js的原型链 __proto__指的是父类的prototype属性
var Foo = function() {} var foo = new Foo; console.log(foo.__proto__ === Foo.prototype) // true console.log(Foo.__proto__ === Function.prototype) // true
typeof
typeof 判断值的类型
基本类型 undefined、Null、Boolean、String、Number 可直接判断
typeof 【-- Array、Object、Null --】== 'object'
typeof function = 'function'
instanceof
判断是否是 自定义类的实例
aa = new bb();
aa.__proto__ ===? bb.prototype ==> aa instanceof bb
标准方法
一般采用对象原型上的 Object.prototype.toString() 方法
Object.prototype.toString.call(1) ===> '[ object Number ]'
其他判断
判断DOM元素
通过dom的nodeType属性
判断数组
Array.isArray(arr) ==> true / false
Number
String
null
对象Object
1.狭义的对象(object)
2. 数组(Array)
3.函数(Function)
Boolean
Undefined
Symbol