1. 什么是对象
2. 创建对象的三种方式
2.1 利用字面量创建对象
对象字面量:就是花括号{}
里面包含了表达这个具体事务(对象)的属性和方法
- 创建对象
//使用字面量创建对象
var obj = {
name: '张三',
age: 18,
sex: '男'
sayHi: function(){
console.log('hi~');
}
}
- 调用对象
调用对象的属性: 对象名.属性名
或者对象名['属性名']
console.log(obj.name) //'张三'
调用对象的方法:对象名.方法名()
obj.sayHi();
2.2 利用new Object 创建对象
var obj = new Object(); //创建一个空对象
obj.name = '张三'; //利用等号赋值属性与方法
obj.age = 18;
obj.sex = '男';
obj.sayHi = function(){
console.log('hi~');
}
2.3 利用构造函数创建对象
构造函数:把对象相同的属性和方法抽象出来封装到函数里面
function 构造函数名(){ //构造函数名字首字母要大写
this.属性 = 值;
this.方法 = function(){}
}
//调用构造函数
new 构造函数名();
//例
function Person(name,age,sex){
this.name = name;
this.age = age;
this.sex = sex;
}
var p1 = new Person('张三',18,'男');
2.4 Object.create() 创建实例对象
构造函数作为模板,可以生成实例对象。但是,有时拿不到构造函数,只能拿到一个现有的对象。我们希望以这个现有的对象作为模板,生成新的实例对象,这时就可以使用Object.create()
方法
var person1 = {
name: '张三',
age: 38,
greeting: function() {
console.log('Hi! I\'m ' + this.name + '.');
}
};
var person2 = Object.create(person1);
person2.name // 张三
person2.greeting() // Hi! I'm 张三.