对象(object)
JavaScript中所有事物都是对象:字符串、数值、数组、函数....对象是带有属性和方法的特殊数据类型
两类属性:
自定义属性:直接在对象中定义的属性。
继承属性:在对象的原型对象中定义的属性。
var 对象名={属性:属性值,属性:属性值,·····}
var a={};
alert(a); //[object Object]
console.log(a); //{}
1、访问对象属性两种方法:对象名+属性名
1、objectName.propertyName
2、objectName["propertyName"]
var person = {
firstName: "Bill",
lastName : "Gates",
id : 12345
};
document.getElementById("demo").innerHTML =person.firstName+ " " + person.lastName;
document.getElementById("demo").innerHTML =person["firstName"] + " " + person["lastName"];
结果 Bill Gates
2、this关键词
this:当前对象。this.firstName 的意思是 this 对象的 firstName 属性
// 创建对象:
var person = {
firstName: "Bill",
lastName : "Gates",
id : 12345,
fullName : function() {
return this.firstName + " " + this.lastName;
}
};
// 显示对象中的数据:
document.getElementById("demo").innerHTML = person.fullName();
3、对象也可以有方法。方法是在对象上执行的动作。方法以函数定义被存储在属性中。
//访问对象方法
var person = {
firstName: "Bill",
lastName : "Gates",
id : 12345,
fullName : function() {
return this.firstName + " " + this.lastName;
}
};
// 显示对象中的数据:
document.getElementById("demo").innerHTML = person.fullName();
结果Bill Gates
如果您不使用 () 访问对象,则返回函数定义
4、使用for in遍历对象(返回的是对象的属性)
var person={firstName:"Bill",lastName:"Gates",id:123456}
for (var i in person){
document.write(i+'<br>');
}
结果:firstName
lastName
id