欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

js系列二十六:面向对象基础概念

程序员文章站 2022-05-12 10:40:55
...

1 对象的定义

在ECMAScript-262中,对象被定义为“无序属性的集合,其属性可以包括基本值,对象或者函数”。
也就是说,对象是由一系列无序的 key-value 对组成,其中value可以是基本的数据类型,对象,数组,函数等。

var person = {
	name: 'Tom',
	age: 18,
	getName: function() {
		return this.name;
	}
	parent: {}
}

创建对象

可以通过关键字 new 来创建一个对象

var obj = new Object()

也可以通过字面量的形式创建一个对象

var obj = {}

当我们想要给创建对象添加属性与方法时,方法如下:

var person = {};
person.name = "Ken";
person.getName = function() {
	return this.name;
}

var person = {
	name: "Ken",
	getName: function() {
		return this.name;
	}
}

访问对象的属性与方法

var person = {
	name: 'Ken',
	age: 18,
	getName: function() {
		return this.name;
	}
}

当我们想要访问它的name属性时,可以使用如下方式:

person.name;

person['name'];

var _name = 'name';
person[_name];

当我们想要访问的属性名是一个变量时,可以使用中括号的方式,方法如下:

["name", 'age'].forEach(function(item){
	console.log(person[item]);
})