您的位置:首页 > 移动开发 > Objective-C

Javascript 面向对象学习1 Function function Object

2009-03-08 19:32 781 查看
Javascript 编程也有一段时间了,但还是有很多基础概念似懂非懂,抽空整理一下,理解不对的大家纠正一下。

1: Function 和 function

var _proto = obj.__proto__;

while (_proto) {

if (_proto == class1.prototype) {

alert("class1");

}

else if (_proto == class2.prototype) {

alert("class2");

}

else if (_proto == class3.prototype) {

alert("class3");

}

else if (_proto == class4.prototype) {

alert("class4");

}

else if (_proto == class5.prototype) {

alert("class5");

}

else if (_proto == Object.prototype) {

alert("Object");

} else {

alert("unknow");

alert(_proto.constructor);

}

_proto = _proto.__proto__;

}


正常继承关系

class4->class3->class2->class1->Object

改变后继承关系

class4->unknow->class2->class1->Object

instanceof 是在 _proto_链上的节点逐个进行比较,如果找到相等的节点,则返回true,否则返回false。

对于 unknow 对象 它的 _proto.constructor 显示为 "function class1() {}"

不过好像除Object, class4~class1的 _proto.constructor 都为 "function class1() {}"

对于这个还是不太明白,对于这一点确实有点不好理解,知道的的同学指点一下。

参考:
http://www.javaeye.com/topic/155109 http://www.cnblogs.com/bmrxntfj/archive/2008/07/17/829833.html http://blog.csdn.net/nksongzz/archive/2008/06/25/2585196.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: