js原型链上面的炕:通过实例对象修改原型(链)上面的属性

目录

 js:通过实例对象修改原型(链)上面的属性

1 原型对象属性是基本数据类型

2 原型对象的属性为引用类型

3 总结(只是把前面的copy一下,方便记忆)

 js:通过实例对象修改原型(链)上面的属性

我是在学习原型链继承的时候发现的,学习真能让人发现问题。

这里分原型对象中属性为基本数据类型和引用数据类型两种。

而引用数据类型又分为整体修改还是只是修改引用类型的属性(注意不是原型的属性,而是原型属性(引用类型)的属性,是原型中引用类型的属性。)两种。下面先分别说明,最后总结。

1 原型对象属性是基本数据类型

当原型对象的属性为基本数据类型时,通过实例对象修改原型上面的属性,并不会修改原型对象的属性,而是在该实例对象创建了一个同名属性

//构造函数

  function SuperType(age) {

    this.age = age;

}

 

  //重写构造函数的原型

  SuperType.prototype = { //原型是一个对象

    name: "super",

    color: ["red", "blue", "yellow"],

    printName: function () {

        console.log(name);

    }

}

 

  //创建实例对象

  let obj__1 = new SuperType(16);  //实例对象1

  let obj__2 = new SuperType(18); //实例对
  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值