对象基础
什么是对象
对象是一个包含 相关数据和方法的集合 (通常由一些变量和函数组成,我们称之为对象里面的属性和方法)
- 创建对象几种方式
// 1.通过{}创建对象
var person = {}
// 2.通过new Object()创建对象
var person = new Object()
// 3.使用字面量创建对象
var person = {
name: ["Bob", "Smith"],
age: 32,
gender: "male",
interests: ["music", "skiing"],
bio: function () {
alert(
this.name[0] +
" " +
this.name[1] +
" is " +
this.age +
" years old. He likes " +
this.interests[0] +
" and " +
this.interests[1] +
"."
)
},
greeting: function () {
alert("Hi! I'm " + this.name[0] + ".")
},
}
// 4.等
取值
var person = {
name: ["Bob", "Smith"],
names: {
first: "Bob",
last: "Smith",
},
age: 32,
gender: "male",
interests: ["music", "skiing"],
bio: function () {
alert(
this.name[0] +
" " +
this.name[1] +
" is " +
this.age +
" years old. He likes " +
this.interests[0] +
" and " +
this.interests[1] +
"."
)
},
greeting: function () {
alert("Hi! I'm " + this.name[0] + ".")
},
}
// 点表示法
person.age
person.interests[1]
person.bio()
// 括号表示法
person["age"]
person["names"]["first"]
赋值
// 1.改变person中的值
person.age = 45
person["name"]["last"] = "Cratchit"
// 输出值
person.age
person["name"]["last"]
// 2.创建新的成员
person["eyes"] = "hazel"
person.farewell = function () {
alert("Bye everybody!")
}
// 输出值
person["eyes"]
person.farewell()
"this"的含义
var person1 = {
name : 'Chris',
greeting: function() {
alert('Hi! I\'m ' + this.name + '.');
}
}
var person2 = {
name : 'Brian',
greeting: function() {
alert('Hi! I\'m ' + this.name + '.');
}
}
这里this即指 person 对象