您的位置:首页 > Web前端 > JavaScript

JS-prototype

2016-03-24 17:25 621 查看
记录一下在工作中了解的内容:


 

prototype属性可算是JavaScript与其他面向对象语言的一大不同之处。 
prototype就是“一个给类的对象添加方法的方法”,使用prototype属性,可以给类动态地添加方法,以便在JavaScript中实现“ 继承”的效果。
 

   具体来说,prototype是在 IE 4 及其以后版本引入的一个针对于某一类的对象的方法,当你用prototype编写一个类后,如果new一个新的对象,浏览器会自动把prototype中的内容替你附加在对象上。这样,通过利用prototype就可以在JavaScript中实现成员函数的定义,甚至是“继承”的效果。 
    对于javascript本身而言是基于对象的,任何元素都可以看成对象。然而类型和对象是不同的,而我们所讲的prototype属性即是基于类型的一种属性。对于prototype的基本使用就如对象的创建及属性赋值一样的简单。直接通过赋值操作即可完成属性的创建。
关于prototype,理解这个很有必要 :
        *
可以在类型上使用proptotype来为类型添加行为。这些行为只能在类型的实例上体现。
        * JS中允许的类型有Array, Boolean, Date, Enumerator,Error, Function, Number, Object, RegExp, String
        *
在实例上不能使用prototype,否则会发生编译错误
        *
可以为类型定义“静态”的属性和方法,直接在类型上调用即可
*
实例不能调用类型的静态属性或方法,否则发生对象未定义的错误
*
可以在外部使用prototype为自定义的类型添加属性和方法。
*
也可以在对象上改变或增加方法。(和普遍的面向对象的概念不同)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascrpit