• 原型讲解二:原型是干什么用的


    前面说了这么多的原型的概念,那么原型用在哪里呢?

    之前说过,直接在构造函数外面定义一个函数方法,势必会造成全局的变量污染,那么怎么避免这个问题呢?那么就要涉及到在原型上面定义一个方法了:

    范例:

    function Person(name,age,gender){

       this.name=name;

       this.age=age;

       this.say=function(“我是”+this.name);

     }

     这是一个简单的构造函数,那么是怎么改进的呢?

         改进1:为了防止每次建立一个对象,对象里包含一个say()函数方法

                 在构造函数的外面添加了一个say()含数,但是造成了全局的变量污染。

         该进2:使用原型的方法

               this.say方法就可以不定义了

         看看这里的定义:

    Person.prototype.say=function(){

      alert(“我是”+this.name);

    }

    这样就完美的解决了上面构造函数外面直接定义函数方法从而污染全局变量的问题。

    再补充几个专业的术语

        什么叫做实例化:

       例如 var p=new Person();

       就是用new创建了一个对象,该对象拥有构造函数的属性和方法,有木有感觉构造函数像一个模板呢?,结构是不变的,唯一变的就是实参的变化

       更专业的叫法:pPerson()这个构造函数的一个实例

  • 相关阅读:
    浅谈MVVM
    组装数据和页面渲染
    Vuejs实现轮播图
    Vuejs选项卡案例
    选项卡案例
    js中用来操作数组的相关的方法
    js中用来操作字符串的相关的方法
    用逗号拼接字符串,并且去掉最后一个逗号
    微信分享链接或网站文章到微信朋友圈,缩略图片不显示,该如何解决?
    Spring 的介绍和目标
  • 原文地址:https://www.cnblogs.com/z-web-2017/p/6937139.html
Copyright © 2020-2023  润新知