JavaScript 构造函数

构造函数就是 初始化对象的函数,简单的说就是给刚刚创建的对象赋值属性等。

1、构造函数的作用

-> 直接量(字面量,literal)(123 {} []...)  缺点:无法复用



-> 工厂函数(factory)
function createPerson(name, age, gender){
    return {
        name: name,
        age: age,
        gender: gender
    };
}
缺点:不易于维护区分,不易于继承的实现

-> 构造器(constructor)
常常将其称为构造函数、构造方法
// Pascal 命名规则(从第一个单词起首字母大写)
function Person(name, age, gender){
    this.name = name;
    this.age = age;
    ......
}

-> 在  js 中  对象 具有动态性
    可以利用  对象.属性 或  对象['属性名'] 随意的给对象增加成员
    同时可以利用  delete 运算符删除成员



2、构造函数的执行过程

-> 构造函数的执行过程(本质):利用对象的动态性给对象增加成员

-> 将下列代码的执行过程描述出来
function Person(name){
    this.name = name;
    this.sayHello = function(){};
}
var p = new Person('jim');

1> 首先执行 new 运算符,创建对象,该对象中什么也没有,是一个空对象(注意:空与空对象是两个概念)
2> 调用构造方法,将刚刚创建的对象引用传递给构造函数的this
3> 依次执行构造函数中的代码,如果出现 this.xxx = xxx 就是表示给刚刚创建的对象添加成员
4> 构造函数执行结束,默认返回 this(可以不写 return),将对象的引用赋值给 new 左边的等号左边的变量
5> 此时构造函数执行结束,构造函数内部的变量销毁




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值