1.为什么要有对象
function printPerson(name,age,sex){
}
// 函数的参数如果特别多的话,可以使用对象简化
function printPerson(person){
console.log(person.name);
}
2.什么是对象
对象是什么?---看得见,摸得着,特指某一事物
找对象
文字描述找对象
小明牵着一只小狗逛街
对象的特点?---有特征和行为的,特指某一件事物
3.JavaScript中的对象
// 使用系统构造函数创建对象
// 小明举例
// 实例化了一个对象
var obj = new Object();
// 特征-----属性,行为----方法(函数)
// 如何设置对象的属性? 对象.名字 = 值
obj.name = "小明";
obj.age = 20;
obj.sex = "男";
4.对象创建方法
//对象字面量
var obj = {
name: '小明',
age: 20,
sex: '男',
sayHi: function () {
console.log(this.name);
}
};
// new Object()创建对象
var person = new Object();
person.name = '小明';
person.age = 15;
person.job = 'actor';
person.sayHi = function(){
console.log('你好');
}
// 工厂函数创建对象
function createPerson(name, age, job) {
var person = new Object();
person.name = name;
person.age = age;
person.job = job;
person.sayHi = function(){
console.log('你好');
}
return person;
}
var p1 = createPerson('张三', 22, 'actor');
// 自定义构造函数
function Person(name,age,job){
this.name = name;
this.age = age;
this.job = job;
this.sayHi = function(){
console.log('你好');
}
}
var p1 = new Person('张三', 22, 'actor');
5.属性和方法
如果一个变量属于一个对象所有,那么该变量就可以称之为该对象的一个属性,属性一般是名词,用来描述事物的特征。
如果一个函数属于一个对象所有,那么该函数就可以称之为该对象的一个方法,方法是动词,描述事物的行为和功能。
new关键字
this详解