JS访问对象两种方式区别解析


Posted in Javascript onAugust 29, 2020

可以使用下面两种方式访问对象的属性和方法

1.对象名.属性名

对象名.方法名()

2.对象名["属性名"]

 对象名"方法名"

var obj = {
         name : "小明",
         age : 18,
         say : function(){
           console.log("我是"+this.name+"我"+this.age+"岁");
         }      
     };
     console.log(obj.name);
     console.log(obj["name"]);
     obj.say();
     obj["say"]();

对于已经存在的属性和方法,用.和用[]得到的结果一致、

对于不存在(未定义)的属性和方法,用.会创建这个新的属性或方法,而用[]的方式访问不会创建新的属性或方法

例如在用for-in遍历对象时

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]);//输出对应的属性值和方法,方法未调用所以输出的是方法的代码
    }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Mootools 1.2教程 同时进行多个形变动画
Sep 15 Javascript
JavaScript 计算图片加载数量的代码
Jan 01 Javascript
收集json解析的四种方法分享
Jan 17 Javascript
jQuery打印指定区域Html页面并自动分页
Jul 04 Javascript
js实现双击图片放大单击缩小的方法
Feb 17 Javascript
jQuery实现类似标签风格的导航菜单效果代码
Aug 25 Javascript
javascript中alert()与console.log()的区别
Aug 26 Javascript
javascript滚轮控制模拟滚动条
Oct 19 Javascript
node+koa2+mysql+bootstrap搭建一个前端论坛
May 06 Javascript
解决mui框架中switch开关通过js控制开或者关状态时小圆点不动的问题
Sep 03 Javascript
原生JavaScript实现的无缝滚动功能详解
Jan 17 Javascript
Node.js 中判断一个文件是否存在
Aug 24 Javascript
js在HTML的三种引用方式详解
Aug 29 #Javascript
toString.call()通用的判断数据类型方法示例
Aug 28 #Javascript
你不知道的 TypeScript 高级类型(小结)
Aug 28 #Javascript
js和jquery判断数据类型的4种方法总结
Aug 28 #jQuery
Node在Controller层进行数据校验的过程详解
Aug 28 #Javascript
Postman无法正常返回结果问题解决
Aug 28 #Javascript
Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)
Aug 28 #Javascript
You might like
模仿OSO的论坛(四)
2006/10/09 PHP
PHP学习之字符串比较和查找
2011/04/17 PHP
Laravel框架路由管理简单示例
2019/05/07 PHP
JavaScript的jQuery库中ready方法的学习教程
2015/08/14 Javascript
JavaScript弹出对话框的三种方式
2016/03/23 Javascript
AngularJS中$watch和$timeout的使用示例
2016/09/20 Javascript
jQuery操作css样式
2017/05/15 jQuery
underscore之Collections_动力节点Java学院整理
2017/07/10 Javascript
javascript按钮禁用和启用的效果实例代码
2017/10/29 Javascript
React 组件间的通信示例
2018/06/14 Javascript
vue项目每30秒刷新1次接口的实现方法
2018/12/04 Javascript
详解vue 路由跳转四种方式 (带参数)
2019/04/28 Javascript
js实现select下拉框选择
2020/01/11 Javascript
使用python检测主机存活端口及检查存活主机
2015/10/12 Python
python+splinter实现12306网站刷票并自动购票流程
2018/09/25 Python
Python argparse模块使用方法解析
2020/02/20 Python
5款实用的python 工具推荐
2020/10/13 Python
Needle & Thread官网:英国仙女品牌
2018/01/13 全球购物
英国最大最好的无人机商店:Drones Direct
2019/07/12 全球购物
乐高西班牙官方商店:LEGO Shop ES
2019/12/01 全球购物
自动化专业毕业生自荐信
2013/11/01 职场文书
写给保洁员表扬信
2014/01/08 职场文书
银行领导证婚词
2014/01/11 职场文书
应届护士求职信范文
2014/01/26 职场文书
大学毕业生求职自荐信
2014/02/20 职场文书
公司中层干部的自我评价分享
2014/03/01 职场文书
退学证明范本3篇
2014/10/29 职场文书
学雷锋献爱心倡议书
2015/04/27 职场文书
2015年污水处理厂工作总结
2015/05/26 职场文书
春风化雨观后感
2015/06/11 职场文书
2015年小学教师培训工作总结
2015/07/21 职场文书
队名及霸气口号大全
2015/12/25 职场文书
《灰雀》教学反思
2016/02/19 职场文书
网络安全倡议书(3篇)
2019/09/18 职场文书
教你一步步实现一个简易promise
2021/11/02 Javascript
JavaScript 事件捕获冒泡与捕获详情
2021/11/11 Javascript