首页 > Web开发 > 详细

js中的prototype

时间:2017-01-23 17:25:59      阅读:205      评论:0      收藏:0      [点我收藏+]

参考文献:阮一峰的博客

  http://www.ruanyifeng.com/blog/2011/06/designing_ideas_of_inheritance_mechanism_in_javascript.html

  http://www.ruanyifeng.com/blog/2010/05/object-oriented_javascript_encapsulation.html

1、为什么会出现prototype

  Every JavaScript object has a prototype. The prototype is also an object.All JavaScript objects inherit their properties and methods from their prototype.所有的js对象都有一个prototype,这个prototype也是一个对象。

  在使用构造函数模式,实例对象时。对于不变的属性和方法,要放在prototype属性上,这样他们在内存中只生成一次。如果是都放在中,没生成一个实例就多生成一次,多占用内存。

  因此,在prototype中存放的是不变的属性以及方法。

2、构造函数创建对象的方式

        function Person(name, age) {
            this.name = name;
            this.age = age;
        }
        //prototype放各实例共享的变量、方法
        Person.prototype = {
            des: "人类",
            eat: function () {
                console.log(‘eat‘);
            }
        }
        var person1 = new Person("person1", 12);
        person1.eat();
        console.log(person1.des);
        console.log(person1.name);
        console.log(person1.age);    

   运行截图:

  技术分享

 

js中的prototype

原文:http://www.cnblogs.com/zhaoyihao/p/6344391.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!