一:对象可以添加属性,也可以添加函数。属于一个对象的函数称为方法!!
<script type="text/javascript">
var student = {
name :"二狗",
age : 18,
printMassage : func(){
document.writeln("Hello" + **this**.name);//注意点(1)
//属于student这个对象的func函数称为方法。
} //**这里不加分号**
student.name = "狗蛋儿";//修改对象的属性值。注意点(2)
student["age"] = 18; //修改对象的属性。注意点(3)
student.number = 2015015015;//**增加对象的新属性**
};
<script>
注意点(1): 在方法内部使用对象的属性,要用this关键字。因为函数作为方法的时候,student这个对象会以关键字this的形式作为参数传递给它。
注意点(2): 在修改和新增属性值的时候,属性和值之间用圆点表示。
注意点(3): 这是类数组索引法。属性名作为字符串放在一对方括号之间,这种取值 非常方便。这是因为可以用变量表示属性名。如下所示:
var student = {
name :"二狗",
age : 18
};
var **propName** = "age";
student[ **propName** ] = "狗蛋儿";
//在此基础上,就可以枚举对象属性(带回细讲)
二:枚举对象属性(类数组索引法)
<script type="text/javascript">
var student = {
name :"二狗",
age : 18,
printMassage : func(){
document.writeln("Hello" + **this**.name);
}
};
for(var prop in student) {
document.writeln(prop + ":" + student[prop]);
} //这里不加分号
<script>
for ……in 循环代码块中的语句会对student对象的每一个属性执行一次。在每一次执行过程中,属性名(name、age)会依次赋值给prop 变量。本例中student[prop],使用了类数组所引法获取student对象的属性值。