美文网首页
你就是上帝,JS中的对象构造函数解析

你就是上帝,JS中的对象构造函数解析

作者: 本杰明蚂蚁 | 来源:发表于2018-07-21 09:20 被阅读9次

什么是对象?

对象就是能够形象化描述的东西,例如:一个杯子,一条狗,一匹马,一辆车

实例化就是准确的描述:一个红色的杯子,一个蓝色的杯子,红色和蓝色就是特有的,杯子就是对象,是公有的;

这些东西就是上帝创建的对象,那么我们在编程中能够创造对象就好比拥有了上帝的能力。

在JS中创建一个‘亚当’对象:

var person = {

name:‘亚当’,sex:'男'

}

上帝创造了亚当,夏娃,但是并不是都创建每一个人,我们每个人都有自己的名字,相貌,性别,年龄,爱好等等这些就是对象实例化;但是我们都必须像亚当一样,有手,有脚,眼镜,鼻子,嘴巴。那么就很清楚了,我们是上帝,在JS中创建了’亚当‘对象,实例化一个对象就是造人的过程。当然不是现实生活中造人了,哈哈

能从一个‘亚当’对象中实例化无限的独特的凡人就是面向对象编程;

如何实例化?

在JS中 用 new 关键字来实例化。

下面是构造函数创建对象:

function Person(name,sex,age){

    this.name = name;

    this.sex=sex;

    this.age=age

}

那么构造函数为什么叫构造函数?

那是因为构造函数赋予了我们向上帝一样的能力,能够构建一个亚当模型,剩下的凡人就可以通过new轻松创建了;

在没有构造函数之前 有工厂模式生成对象,那不是真正的面向对象编程,只是重复的创建对象;

只有使用构造函数才能让我们变成上帝。

造人过程:   var people1 =  new Person('麻花疼',‘男’,‘47’);

                        var people2 = new Person('麻云',‘男’,‘53’);

                        console.log(pepole1 instanceof Person);//true

// instanceof 就是判断这个实例所属于哪个对象;

就是这么简单,创出了独特的人类。

在new的过程中,这个构造函数内部发生了什么呢:

1、创建一个新的对象,这个对象的类型是object。

2、往对象添加属性。

3、return出这个新对象。

构造函数还是有缺陷的,比如一个people1和people2都有共同的方法

sayName:function(){

console.log(this.name);

}

这么每一个实例都有了sayName方法;那怎么办,我们可以把方法提出来给原型(prototype),把特有的属性留给构造函数。

这就是完整的构造函数,完整的造人过程。

相关文章

  • 你就是上帝,JS中的对象构造函数解析

    什么是对象? 对象就是能够形象化描述的东西,例如:一个杯子,一条狗,一匹马,一辆车 实例化就是准确的描述:一个红色...

  • 10.面向对象和类的区别?

    简单来说类是对象的模板在JS中没有类,所以在JS中所谓的 类 就是构造函数。对象就是由构造函数创建出来的实例对象。...

  • 3-javascript 构造函数

    js中面向对象编程是基于构造函数(consstructor)和原型链(prototype)的。 构造函数作为对象的...

  • 2020-12-15

    js对象的创建和函数 创建对象 工厂模式 构造函数 原型方式+构造函数

  • JS对象

    1、JS中的对象(Object) 1.1、创建空白对象 1.2、构造函数(就是为了创建对象实例) 一、可以创建对象...

  • 面向对象/内置构造函数

    内置构造函数创建对象 JS中的内置构造函数 String Number Boolean 注意:(区别于string...

  • 06_JS面向对象

    创建函数的几种方式 函数的构造函数Function 在 js 中 使用Function可以实例化函数对象。也就是说...

  • 对象的相关概念和方法

    对象的概念 因为js中没有真正类的概念. js的实例对象都是通过函数的构造函数调用生成的(new), 对象和对象...

  • 随手记

    js中的new 构造函数其实就是一个能返回对象的函数 不使用new来创造一个构造函数: 使用new来创造一个构造函...

  • class类、function构造函数

    一、function构造函数 构造函数 在js中,函数本身也是一个对象,这种对象比较特殊,它有一个prototyp...

网友评论

      本文标题:你就是上帝,JS中的对象构造函数解析

      本文链接:https://www.haomeiwen.com/subject/tvgcmftx.html