现实生活中的对象、属性和方法
现实生活中,一辆车是一个对象。
一辆车有颜色,重量,等属性。有启动和停止,刹车等方法。
对象 | 属性 | 方法 |
---|---|---|
car.name = Fiat
car.model = 500 car.weight = 850kg car.color = white | car.start()
car.drive() car.brake() car.stop() |
所有车辆都有同样的属性,但是这些属性的值却因为每辆车的不同而不同的。
下面的一段代码是给一个变量car赋予了一个值Fiat。
var car = "Fiat";
对象也是变量。但是对象可以包含多个值。
下面的代码是给car这个变量赋予了很多的值。
var car = {type:"Fiat", model:"500", color:"white"};
但是这个值的写法是配对的写法,如:type:”Fiat”。即是名称和值通过冒号分开。
对象属性
name:values配对的写法(在javascript对象中)叫做属性。
var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
属性 | 属性值 |
---|---|
firstName | John |
lastName | Doe |
age | 50 |
eyeColor | blue |
对象方法
方法是可以在对象上执行的操作。
方法跟其它对象的属性一样,保存在对象属性当中,以定义的函数的形式。
属性 | 属性值 |
---|---|
firstName | John |
lastName | Doe |
age | 50 |
eyeColor | blue |
fullName | function() {return this.firstName + ” ” + this.lastName;} |
对象的定义
您可以使用对象文字定义(并创建)一个JavaScript对象。
var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
空格和换行不会影响代码的执行。一个对象的定义可以换行编写。
访问对象属性
有两种方式可以访问对象属性。
objectName.propertyName //对象名称.属性名称
例如:
var person = {
firstName: "John",
lastName : "Doe",
id : 5566,
fullName : function() {
return this.firstName + " " + this.lastName;
}
};
document.getElementById("demo").innerHTML = person.fullName(); //John Doe
或
objectName["propertyName"] //对象名称["属性名称"]
例如:
var person = {
firstName: "John",
lastName : "Doe",
id : 5566
};
document.getElementById("demo").innerHTML =
person["firstName"] + " " + person["lastName"]; //John Doe
访问对象方法
访问对象的方法可以使用下面的语法。
objectName.methodName() //对象名称.方法名称()
例如:
var person = {
firstName: "John",
lastName : "Doe",
id : 5566,
fullName : function() {
return this.firstName + " " + this.lastName; //这里的this指的就是当前的对象
}
};
document.getElementById("demo").innerHTML = person.fullName(); //John Doe
如果,访问的方法不带(),那么返回的是定义的函数。这个之前在上一节课的函数的定义中也提到过。
var person = {
firstName: "John",
lastName : "Doe",
id : 5566,
fullName : function() {
return this.firstName + " " + this.lastName;
}
};
document.getElementById("demo").innerHTML = person.fullName; //function () { return this.firstName + " " + this.lastName; }
不要声明字符串,数字和布尔值作为对象!
当用关键字“new”声明一个JavaScript变量时,该变量将被创建为一个对象:
var x = new String(); // 声明x为一个String对象
var y = new Number(); // 声明y为一个Number对象
var z = new Boolean(); // 声明z为一个Boolean对象
避免字符串,数字和布尔对象。他们会使你的代码复杂化,并减慢执行速度。
在之后的教程中会学到更详细的关于对象的知识。
评论区
发表新的留言
您可以留言提出您的疑问或建议。
您的留言得到回复时,会通过您填写的邮箱提醒您。