接上集,我们知道了对象是什么,对象的组成以及为什么需要对象,那么我们今天就来说一说如何创建对象,介绍创建对象的三种方式以及如何访问对象。
1.利用字面量创建对象
对象字面量:使用"{}"作为对象的边界,在{}里面描述对象的属性和方法
需要注意的是:
1.属性与属性之间通过","隔开;
2.属性名与属性值通过":"隔开;
3.属性名一般不添加引号(当属性名中出现特殊字符的时候需要添加引号),属性值如果是字符串的一定添加引号。
var obj = {
// 属性
name: "可可",
type: "阿拉斯加",
age: "5岁",
color: "棕红色",
// 方法
bark: function () {
console.log('汪汪汪')
},
showFilm: function () {
console.log('我会演电影')
}
}
以上,通过字面量创建了一个对象。
2.利用new Object()创建对象
1.我们是利用等号=赋值的方法添加对象的属性和方法
2.每个属性和方法之间用分号结束
如下所示:
var obj = new Object();//创建一个空对象
obj.name='鸣人';
obj.sex='男';
obj.age=15;
obj.skill=function(){
console.log('影分身术')
}
console.log(obj.name);
console.log(obj.sex);
console.log(obj.age);
obj.skill()
输出结果如下:
3.利用构造函数创建对象
构造函数是一种特殊的函数,主要是用来初始化对象的,就是为对象成员变量赋初始值,总是和new运算符一起使用,我们可以把对象中一些公共的属性和方法抽取出来,然后封装到函数里面。
利用构造函数创建对象如下所示:
输出结果如下:
在使用构造函数的时候,要注意:
1.构造函数的书写格式如下
function 构造函数名(){
this.属性=值;
this.方法 =function(){
}
}
2.构造函数的名字首字母要大写
3.构造函数不需要return就可以返回结果
4.调用构造函数必须要用new
5..在构造函数里面的属性和方法必须在前面添加this
对象访问的两种方式,分别是点语法和中括号访问
1.属性访问
点后面直接跟的是对象的属性,如果属性存在可以访问到,如果属性不存在,得到undefined。 中括号 中 放的是变量,中括号可以将该变量进行解析。
obj.name //'terry'
obj['name'] //'terry'
name = "age"
obj['name'] //12
2.方法访问
方法的访问主要是为了执行该对象中的方法,需要按照函数调用的方式去使用
//以下执行结果不一样
obj.sayName;
obj.sayName();//方法的使用