| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 517 人关注过本帖
标题:javascript代码
只看楼主 加入收藏
liyuquan0103
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2009-9-24
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
javascript代码
var Extend = function(destination, source) {
    for (var property in source) {
        destination[property] = source[property];
    }
    return destination;
这段代码是什么意思?高手指教
搜索更多相关主题的帖子: 代码 javascript 
2009-09-24 00:57
foktime
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:奥斯维辛
等 级:贵宾
威 望:35
帖 子:795
专家分:2742
注 册:2009-9-4
收藏
得分:10 
是继承
这是Prototype对类进行扩展的一种方式,返回的是扩展后的对象。
以上代码可以这么理解,对对象destination现有的功能进行扩展,使其拥有源对象source的所有属性和方法。也就是给destination添加新的属性和方法。
以上是个人理解,有深入理解的同学可以发表一下看法,共同学习。
2009-09-24 09:13
歌革
Rank: 2
等 级:论坛游民
帖 子:2
专家分:17
注 册:2009-9-25
收藏
得分:10 
嗯..楼上说得对....
这是一个不太标准的继承   他不是在类上进行继承,而是对类的对像进行了掺元类式的复制~
var Extend = function(destination, source) {
    for (var property in source) {
        destination[property] = source[property];
    }
  return destination;
}

function Class1 (){
  this.c1 = 'test1';
  this.c2 = 'test2';
  this.c3 = function (){alert("I am func c3");};
}

Class1.prototype.c4 = function (){alert("I am func c4");};

function Class2 (){
  this.c5 = 'test5';
  this.c6 = 'test6';
}
var oClass1 = new Class1();
var oClass2 = new Class2();
Extend(oClass2,oClass1);      //这里的参数不是类,而是类的实例~
oClass2.c4();
alert(oClass2.c5);
2009-09-25 11:03
liyuquan0103
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2009-9-24
收藏
得分:0 
多谢大师们指点
2009-09-26 00:53
快速回复:javascript代码
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011141 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved