js构造函数
Posted perse
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js构造函数相关的知识,希望对你有一定的参考价值。
在es6之前,对象不是基于类创建的,而是用一种称为构造函数的特殊函数来定义对象和它们的特征。
当需要很多很多对象时,而这些对象又有相同的属性和方法。这时需要把它抽离出来,再大量的生成对象,这时候就需要构造函数。
创建对象可以通过以下三种方式:
1.对象字面量
var obj1 = {}
2.new Object()
var obj1 = new Object()
3.自定义构造函数
function Student(name, age) {
this.name = name
this.age = age
this.study = function() {
console.log(this.name + ‘在学习‘)
}
}
var zs = new Student(‘张三‘, 18)
console.log(zs) // Student {name: "张三", age: 18, study: ƒ}
zs.study() // 张三在学习
var ls = new Student(‘李四‘, 19)
console.log(ls) // Student {name: "李四", age: 19, study: ƒ}
ls.study() // 李四在学习
每当需要一个新的对象,就new一个新的对象。
构造函数是一个特殊的函数,主要用来初始化对象,即为成员变量赋初始值,它总与new一起使用。我们可以把对象中的一些公共的属性和方法抽取出来,然后封装到这个函数里。
new 在执行时会做四件事情:
1.在内存中创建一个新的空对象。
2.让this指向这个对象。
3.执行构造函数中的代码,给这个对象添加属性和方法。
4.返回这个新对象(所以构造函数不需要return)。
以上是关于js构造函数的主要内容,如果未能解决你的问题,请参考以下文章