加载中…
个人资料
Kevin
Kevin
  • 博客等级:
  • 博客积分:0
  • 博客访问:26,507
  • 关注人气:4
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
正文 字体大小:

js 对象冒充

(2013-12-06 14:23:37)
标签:

it

写一个小样供爱好者参考。

构造函数使用 this 关键字给所有属性和方法赋值。
function ClassA(sColor) {
    this.color = sColor;
    this.sayColor = function () {
        alert(this.color);
    };
}
在这段代码中,为 ClassA 赋予了方法 newMethod然后调用该方法,传递给它的是 ClassB 构造函数的参数 sColor。最后一行代码删除了对 ClassA 的引用,这样以后就不能再调用它。
function ClassB(sColor, sName) {
    this.newMethod = ClassA;
    this.newMethod(sColor);
    delete this.newMethod;
所有新属性和新方法都必须在删除了新方法的代码行后定义。否则,可能会覆盖超类的相关属性和方法
    this.name = sName;
    this.sayName = function () {
        alert(this.name);
    };
}
var objA = new ClassA("black");
var objB = new ClassB("red", "John");
objA.sayColor();    //输出 "black"
objB.sayColor();    //输出 "red"
objB.sayName();        //输出 "John"

0

阅读 评论 收藏 禁止转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有