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>

网友评论