详解js中typeof、instanceof

来源:互联网 发布:淘宝店代理的发货流程 编辑:程序博客网 时间:2024/05/16 06:26

typeof返回一个表达式的数据类型的字符串,返回结果为js基本的数据类型,包括number,boolean,string,object,undefined,function.语法为typeof(data) 或 typeof data

instanceof则为判断一个对象是否为某一数据类型,或一个变量是否为一个对象的实例;返回boolean类型

语法为 o instanceof A


functionPerson(){};

var p = new Person();

console.log(pinstanceof Person);//true


模拟instanceof

function_instanceof(A, B){

var O = B.prototype;// 取B的显示原型

A= A.__proto__;// 取A的隐式原型

while(true) {

//Object.prototype.__proto__ === null

if(A === null)

returnfalse;

if(O === A)

// 这里重点:当 O 严格等于 A 时,返回 true

returntrue;

A= A.__proto__;

}}




 

0 0