JavaScript 对象
- JavaScript 变量是数据值的容器。
这段代码把一个单一值(porsche)赋给名为 car 的变量:
var car = "porsche";
- 对象也是变量。但是对象包含很多值。
这段代码把多个值(porsche, 911, white)赋给名为 car 的变量:
var car = {type:"porsche", model:"911", color:"white"};
- 值以名称:值对的方式来书写(名称和值由冒号分隔)。
- JavaScript 对象是被命名值的容器。
对象属性
- (JavaScript 对象中的)名称:值对被称为属性。
var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};
属性 | 属性值 |
---|---|
firstName | Bill |
lastName | Gates |
age | 62 |
eyeColor | blue |
对象方法
- 对象也可以有方法。
- 方法是在对象上执行的动作。
- 方法以函数定义被存储在属性中。
实例:
var person = {
firstName: "Bill",
lastName : "Gates",
id : 678,
fullName : function() {
return this.firstName + " " + this.lastName;
}
};
属性 | 属性值 |
---|---|
firstName | Bill |
lastName | Gates |
age | 62 |
eyeColor | blue |
fullName | function() {return this.firstName + " " + this.lastName;} |
this 关键词
- 在函数定义中,this 引用该函数的“拥有者”。
- 在上面的例子中,this 指的是“拥有” fullName 函数的 person 对象。
- 换言之,this.firstName 的意思是 this 对象的 firstName 属性。
对象定义
- 定义(创建)了一个 JavaScript 对象:
实例:
var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};
- 空格和折行都是允许的。对象定义可横跨多行:
实例:
var person = {
firstName:"Bill",
lastName:"Gates",
age:50,
eyeColor:"blue"
};
访问对象属性
objectName.propertyName
访问对象方法
objectName.methodName()