简单的实现一个原型链

-

复制代码
var a = { name: "a", age: 10, gender: "female" };
var b = {
  name: "b",
  age: 15,
  gender: "male",
  getGender() {
    return this.gender;
  },
};
var c = {
  name: "c",
  age: 20,
  getAge() {
    return this.age;
  },
};
var d = {
  getName() {
    return this.name;
  },
};
Object.setPrototypeOf(a, b); // 测试时可以用 a.__proto__ = b替代
Object.setPrototypeOf(b, c);
Object.setPrototypeOf(c, d);
Object.setPrototypeOf(d, null);
console.log(a.getName(), a.getAge(), a.getGender()); // a 10 female
console.log(b.getName(), b.getAge(), b.getGender()); // b 15 male
console.log(c.getName(), c.getAge()); // c 20
复制代码

 

 

 

-

posted @   古墩古墩  Views(8)  Comments(0Edit  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
历史上的今天:
2022-07-24 pinia持久化存储插件pinia-plugin-persist
2022-07-24 新的 CSS 伪类函数 :is() 和 :where()
2019-07-24 electron-vue搭建项目
点击右上角即可分享
微信分享提示