Open roxy0724 opened 5 years ago
概念: 检测变量类型,比如,number、bealoon、string、function 等。能检测的类型不多。
typeof 1 === 'number'
概念: 检测变量是否存在与该构造函数相同的原型
var a = {}
a instanceOf Object
// 等效于
a.__proto__ === Object.prototype
概念: 会返回内置对象的 [[Class]] 属性,[[Class]] 内部属性的值用于内部区分对象的种类,所以可以检测出所有的类型
Object.prototype.toString.call(function(){}) === "[object Function]"
typeof
能检测的类型包括:Number, String, Boolean, Undefined, Object, Function, Symbol
instance of
检测的是右边变量的 prototype
在左边变量的 __proto__
上
function Foo(){} var foo = new Foo(); console.log(foo instanceof Foo)//true