Posted on 2007-04-06 13:32
itspy 閱讀(2028)
評論(5) 編輯 收藏
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> Prototype </TITLE>
<SCRIPT LANGUAGE="JavaScript">
//此函數來至于prototype,由于此代碼只是簡單的演示,所以就直接把其提取出來了.
Object.extend = function(destination, source) {
for (var property in source) {
destination[property] = source[property];
}
return destination;
}
function Student(major){
this.major=major;
}
Object.extend(Student.prototype, {
sayHello: function(){
alert("Hello world!");
}
}
)
/**======================================
我比較奇怪的是上面的函數調用下面這段替換怎么就不行
function People(){
sayHello= function(){
alert("Hello world!");
}
}
var people= new People();
var stu=new Student("manage");
Object.extend(stu,people);
=========================================**/
var stu=new Student("manage");
/**=================================
通過這種方式雖然student繼承了pepole的屬性,但通過instanceof,最后的屬性并不是people
==================================**/
stu.sayHello();
for (var property in stu) {
alert(property);
}
</SCRIPT>
</HEAD>
<BODY>
本代碼最初發表于 http://blog.openj.cn
</BODY>
</HTML>