欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JS高级---构造函数通过原型添加方法,原型的作用: 共享数据, 节省内存空间

程序员文章站 2023-03-26 18:21:46
JS高级 构造函数,通过原型添加方法,原型的作用: 共享数据, 节省内存空间 构造函数 //构造函数 function Person(sex, age) { this.sex = sex; this.age = age; } 通过原型添加方法 //通过原型添加方法 Person.prototype. ......

js高级---构造函数,通过原型添加方法,原型的作用: 共享数据, 节省内存空间

 

构造函数

    //构造函数
    function person(sex, age) {
      this.sex = sex;
      this.age = age;
    }

 

通过原型添加方法
    //通过原型添加方法
    person.prototype.sayhi = function () {
      console.log("打招呼,您好");
    };

 

通过console.dir来观察和对比per和person,可以看出:

JS高级---构造函数通过原型添加方法,原型的作用: 共享数据, 节省内存空间

 

实例对象中有个属性,__proto__,也是对象, 叫原型, 不是标准的属性, 浏览器使用的

console.dir(per);//实例对象 person

JS高级---构造函数通过原型添加方法,原型的作用: 共享数据, 节省内存空间

 

构造函数中有一个属性, prototype, 也是对象, 叫原型, 是标准属性, 程序员使用
 console.dir(person);//构造函数的名字 f person(sex, age)

JS高级---构造函数通过原型添加方法,原型的作用: 共享数据, 节省内存空间

 

 

因此:

原型---->__proto__或者是prototype, 都是原型对象

原型的作用: 共享数据, 节省内存空间

 
    var per = new person("男", 20);
    console.dir(per);//实例对象 person
    console.dir(person);//构造函数的名字 f person(sex, age)

    var per2 = new person("女", 30);
    console.log(per.sayhi == per2.sayhi); //true