JavaScript 原型对象、原型链继承简单理解,使用

在这里插入图片描述

非常简单的直接用代码说一下个人对 原型对象的理解


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<script type="text/javascript">
    function Person(name, gender) {
        this.name = name;
        this.gender = gender;
    }

    var p1=new Person("aaa","man");    //创建一个新的原型对象

    var p2=new Person();    //每次以new 关键字调用时,会创建一个新的,独立的内存空间

    p1.sister="lucy";       //因为空间独立,修改其中一个,不会影响到另一个。
    console.log(p1.hasOwnProperty('sister'));     //true
    console.log(p2.hasOwnProperty('sister'));       //false



    //如有业务需求,所有实例对象需要共享的属性和方法,就用prototype属性来设置
    Person.prototype.age=18;    //扩展自定义对象,这样,所有通过Person 实例化的对象都可以访问这个属性
    console.log(p1.age);    //18
    console.log(p2.age);    //18

    //当原型对象访问一个它本身不存在的属性或方法,系统会自动到原构造函数里去找  这就是原型链

</script>
</body>
</html>


在网上找了一张图贴上来:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/freedomVenly/article/details/89279473
今日推荐