JS中访问对象的两种方式区别【转】
2021-02-03 23:14
标签:obj href 访问 for 存在 方法 efi console 就是 可以使用下面两种方式访问对象的属性和方法 1.对象名.属性名 对象名.方法名() 2.对象名["属性名"] 对象名"方法名" 对于已经存在的属性和方法,用.和用[]得到的结果一致、 对于不存在(未定义)的属性和方法,用.会创建这个新的属性或方法,而用[]的方式访问不会创建新的属性或方法 例如在用for-in遍历对象时 利用[]方式只能访问和读取,不会定义新的属性 JS中访问对象的两种方式区别【转】 标签:obj href 访问 for 存在 方法 efi console 就是 原文地址:https://www.cnblogs.com/KillBugMe/p/13153801.html 1 var obj = {
2 name : "小明",
3 age : 18,
4 say : function(){
5 console.log("我是"+this.name+"我"+this.age+"岁");
6 }
7 };
8 console.log(obj.name);
9 console.log(obj["name"]);
10 obj.say();
11 obj["say"]();
for(var x in obj){
console.log(x); //输出obj中的属性名,方法名
console.log(obj.x);//想要用.的方法输出对应的属性和方法 结果是undefined,原因在于JS语言中.方法可以用来声明,声明对象属性的方式就是属性名.属性值
//这里实际先声明了obj的x属性,并且未初始化该属性,然后输出了该属性值,所以为undefined
}
for(var x in obj){
console.log(x); //输出obj中的属性名,方法名
console.log(obj[x]);//输出对应的属性值和方法,方法未调用所以输出的是方法的代码
}
下一篇:php 地区三级联动