javascript构造函数的理解 - 编程让我快乐 - 博客园

186 阅读1分钟
原文链接: www.cnblogs.com

构造函数是在javascript文档的创建对象当中提到的,主要目的是为了解决代码复用,能够大量产生同类型而多作用的方法

在javascript中给出了几种创建对象的模式:

1.对象字面量

  例:

  var obj={

    name:"javascript",

    callMe:function(){ alert(this.name) }

  }

2.工厂模式:简单来说就是封装对应给定的接口参数信息对象,然后返回

  例:创建一个每个人输入名字,年龄,性别,的这么一个对象

  function(name,age,sex){

    var person=new Object();

    person.name=name;

    person.age=age;

    person.sex=sex;

    return person;

  }

3.构造函数:它不直接创建对象,直接将属性与方法值赋给了this对象,且没有返回语句

  例:创建一个与上面工厂模式一样效果的对象

  function Person(name,age,sex){

    this.name=name;

    this.age=age;

    this.sex=sex;

  }

  var person=new Person('javascript',100,'Boy');

  按照惯例,被用作构造函数的函数名称首写字母应该大写,其它则以小写字母开头,主要是为了区别于ECMAjavascript中其它函数

  与工厂模式最大的区别就是要创建一个Person的实例,也就是new操作符,在这个过程中经历以下几个环节

  创建一个新对象

  将构造函数的作用域赋给了新对象(在这里也就是赋给了person对象)

  为新对象person添加属性

  返回新对象

很多人就问了,这工厂模式跟构造函数有什么区别呢?

  1.创建方式不同

  2.