JS中对象属性的表示方法有两种:

<prop为属性名>

  1. obj.prop
  2. obj[‘prop’](注:’[]'里面必须是字符串)

例:

var obj = {name:'abc'
}


obj.prop的内部原理:每当调用obj.prop,系统内部会将其隐式的转换为obj[‘prop’]来执行

在平时的代码中,我们可能用第一种写法用的比较方便,但实际上,第二种方法比第一种方法要更加的快捷(不用进行内部隐式的转换)和灵活

例:

有这样一个旅馆对象,其中包含四个房间对象,现在要写一个对象方法,实现传入房间号参数,返回对应的房间信息。

<script>var hotel = {room1:{name:'room1'},room2:{name:'room2'},room3:{name:'room3'},room4:{name:'room4'},sayRoom:function(num){return this.xxx;}}
</script>

如果我们使用第一种写法将无法实现’room’和num的字符串拼接,而第二种写法能灵活的实现

<script>var hotel = {room1:{name:'room1'},room2:{name:'room2'},room3:{name:'room3'},room4:{name:'room4'},sayRoom:function(num){return this['room'+num];}}
</script>

JS 对象属性的两种表示方法相关推荐

  1. JS 添加属性的两种方式

    let a = [{ name: '羽神' },{ name: '少主' },{ name: '刘备' },{ name: '关于' } ] for (const key in a) {a[key]. ...

  2. 遍历对象属性_细说JS遍历对象属性的N种方法

    本人详细介绍了JS遍历对象N种方法,欢迎关注收藏. 遍历对象属性有五种方法,下图为一个场景对比图. 可以注意到两点: 只有for ... in 才可以遍历原型链属性,且只能遍历可枚举属性. Objec ...

  3. js之删除对象属性的三种方法 判断对象中是否有某一属性的四种方法

    js之删除对象属性的三种方法 & 判断对象中是否有某一属性的四种方法 示例 1.基础版 var a = { id: 18, age: 20, name: "zhangsan" ...

  4. js for in遍历对象_JS中轻松遍历对象属性的几种方式

    自身可枚举属性 Object.keys() 方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for...in 循环遍历该对象时返回的顺序一致 .如果对象的键-值都 ...

  5. win10计算机属性管理打不开,win10无法打开设置应用的两种解决方法【图文】

    自从微软发布win10系统后,越来越多小伙伴将自己的电脑升级为新版的win10系统,升级后发现竟然无法打开设置应用,影响正常操作,怎么办?接下去,小编和大家说说两种解决win10无法打开设置应用的方法 ...

  6. 重装系统重启后计算机属性无法打开,Win7系统计算机属性窗口无法打开的两种参考方法...

    正常情况下,直接右键计算机属性选项就可以查看有关该程序或者文件的基本信息.不过,有些Win7系统右击计算机属性时发现打不开而且还提示"此项目的属性未知",如下图所示,这该如何来处理 ...

  7. Ext.Ajax.request和formPanel.getForm().submit()两种提交方法的异同:

    Ext.Ajax.request和formPanel.getForm().submit()两种提交方法的异同: 1. 相同点: a) 都是使用异步提交的方式: b) 默认都是使用POST方式来提交数据 ...

  8. python ioc di_Spring介绍,IOC(控制反转),DI(依赖注入)介绍及两种注入方法

    Spring介绍,IOC(控制反转),DI(依赖注入)介绍及两种注入方法 第一中方法:在xml文件中注入: (1)开源的轻量级的应用开发框架 特点:a.简化开发:b.解耦:c.集成: 原理对象与对象之 ...

  9. Java动态代理的两种实现方法:JDK动态代理和CGLIB动态代理

    Java动态代理的两种实现方法:JDK动态代理和CGLIB动态代理 代理模式 JDK动态代理 CGLIB动态代理 代理模式 代理模式是23种设计模式的一种,指一个对象A通过持有另一个对象B,可以具有B ...

最新文章

  1. Spring Boot 返回 JSON 数据,一分钟搞定!
  2. LoadRunner中对图表的分析说明
  3. Linux系统中文件^M乱码解决
  4. 管道过滤模式 大数据_大数据管道配方
  5. 在Microsoft System Center中利用您的现有投资管理VMware--Veeam MP v6.5
  6. 4 关卡流 进阶_赛博朋克2077:实用玩法攻略,技术流玩法攻略
  7. 腾讯叮当智能屏发布,主打视听体验、海量内容、儿童模式
  8. sqlmap工具使用用法详解
  9. 【转】C#中的Stream
  10. DDM:剪贴板处理处罚及截取屏幕
  11. OBS 录制简单操作说明
  12. Unity给力插件之ShaderForge
  13. 静态测试和动态测试相关知识点
  14. 团队管理8--管理工作框架及技能图谱
  15. RNA_seq表达分析
  16. 【tensorflow学习之路】如何使用gpu进行运算
  17. 小米路由器登录服务器无响应是怎么回事,小米路由器登录界面打不开怎么办? | 192路由网...
  18. es备份之snapshot SLM策略cron详解
  19. php设计模式之接口
  20. CISCO3640路由器配置参考

热门文章

  1. 数据安全态势感知运营中心的关键防御措施
  2. 计算机应用方面已进入什么为特征的时代,计算机考试题库:计算机基础练习题(7)...
  3. GIS常用的工具及相关网站
  4. Android Telephony控制通话消息下发流程
  5. python横向条形图_seaborn做横向条形图
  6. 计算其标准体重c语言,C语言第三天
  7. Vue服务端渲染-路由相关
  8. JL690X(2)驱动RGB灯带
  9. 数据安全,保我小命;擦边公司,尽早远离!
  10. rm -rf !(file)命令不能执行的解决办法