js原型的通俗理解

来源:互联网 发布:python return{} 编辑:程序博客网 时间:2024/05/18 09:27

刚学习js的时候,写过一篇有关于原型的博客,借鉴于他人的理解

什么是原型?

原型是一个对象,其他对象可以通过它实现属性继承。

可以把函数看成一个类,原型是所有类都有的一个属性,js原型的作用就是给这个类的每一个对象都添加一个统一的方法,看一下下面这段代码就能轻易理解

    <script>
    //声明一个类
    function Person(name,age)
    {
        this.name=name;
        this.age=age;
    }
    //使用原型给类添加方法
    Person.prototype.show=function()
    {
        alert("我叫"+this.name+",今年"+this.age);
    }
    //创建两个对象
    var person1 =new Person('张三',20);
    var person2 =new Person('李四',23);
    //调用原型里面的方法
    person1.show();
    person2.show();
    </script>

如果仅仅是因为一个实例而使用原型是没有多大意义的,这和直接添加属性到这个实例是一样的。假如我们创建了一个实例对象,我们想要要继承一个对象已经存在的功能,比如Array,我们可以像下面这么做:

var  a = {};

a.__proto__ = Array.prototype;

a.length;

原型真正的魅力体现在多个实例共用一个通用原型的时候;



原创粉丝点击