1、修改子类原型对象的引用属性,其父类的原型对象的引用属性跟着改变
2、欢迎大家来指正!
JavaScript中的多种继承方式
一、混入式继承:指的是字面量1继承字面量2;
a) 实现方式:遍历字面量2赋值给字面量1
b) 注意点:必须用[]语法,不能用点语法
c) 缺点:修改字面量1会对字面量2造成影响
# 继承的实现(混入式继承) <script>
var dog = {
name: "啦啦小新",
age: 20,
friends: ["哗啦哗啦", "哔哩哔哩"]
}
//dog1 var dog1 = {};
//dog1 能够拥有dog对象中所有的属性和方法 //遍历dog对象,拷贝它所有的属性和方法设置到自己的身上 for (var k in dog) {
//使用[]语法 dog1[k] = dog[k];
}
console.log(dog1);
//问题:修改其中的某个对象dog1,会对原对象产生影响 //为什么:引用类型的赋值(地址) dog1.friends.push("乌拉乌拉");
哗啦哗啦", "哔哩哔哩","乌拉乌拉"]}
console.log(dog); //{name: "啦啦小新",age: 20,friends: ["哗啦哗啦", "哔哩哔哩","乌拉乌拉"]}
</script>