前端JS学习笔记——构造函数创建对象

JS的对象除了可以用字面量、new的方法创建,还可以用构造函数创建

使用场景:字面量和new的方法一次只能创建一个对象,当有多个同类的对象需要创建时,这两种方法的代码就会比较冗余,如果使用构造函数把对象里相同的属性和方法封装到函数里,在需要时就可以便捷地实例化对象

function Person(name,age,sex){
	this.name = name; 
	this.age = age;
	this.sex = sex;
	this.skill = function(skill){
		console.log(skill);
	}
}
var ocean = new Person('ocean',22,'male');
var yury = new Person('yury',22,'female');
console.log(ocean.name, yury.name); //输出ocean yury
ocean.skill('javascript'); //输出javascript
yury.skill('camera'); //输出camera

构造函数的名字首字母要大写,虽然小写也能执行,但这是规范问题

调用构造函数时要用new关键字

new关键字是怎么执行的呢,以下4步

  1. 在内存里创建一个空对象
  2. 让this指向这个空对象
  3. 执行构造函数里的代码,添加属性和方法
  4. 返回这个对象(所以构造函数不需要return)

个人学习笔记,如有差误欢迎指正


版权声明:本文为zerocean_原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。