JavaScript百炼成仙之对象的取值-前端插件-E先生的博客
Java
MySQL
大数据
Python
前端
黑科技
大语言模型
    首页 >> 前端插件

JavaScript百炼成仙之对象的取值

[导读]:JavaScript百炼成仙之对象的取值...

  “小娃娃,我现在问你,如果我不知道对象的某个属性叫什么名字,那么又该怎么访问对象中对应这个属性的值呢?”何老笑呵呵地问道。

  “什么什么,事先都不知道对象的属性名称,怎么可能访问得到啊?

  这我可不知道,我想这是不可能的。”叶小凡想了想,赶紧摇头。

  “这样吧,我换一种说法。我想你现在已经知道对象可以通过一个点号(.)访问其中的某一个数据了。”

  说着,何老随手一挥,一个对象就生成出来了。

  var container={caoyao:"解毒草",feijian:"乌木剑"};

  “我现在想用到解毒草,就直接用container调用它的caoyao属性。”

  container.caoyao

  “这样做的确是可以的,但是如果遇到这种情况,即事先不知道调用的属性叫什么名字,那么该如何用一个变量定义属性呢?”

  说着,何老又随手一挥,定义了一个变量。

  var container={caoyao:"解毒草",feijian:"乌木剑"};

  var prop="caoyao";

  “这……”叶小凡也陷入沉思,过了许久,缓缓说道:“直接点prop肯定不行,那样的话,container调用的肯定是一个叫作prop的属性。而事实上,container对象里面是没有叫作prop的属性的,得到的结果肯定是undefined。”

  听到这里,何老向叶小凡投去了赞赏的目光,继而说道:“你的分析没有错,这里不能再用之前的那种方法了。小娃娃,你且看好!”话音刚落,何老就打出了新的代码。

  var container={caoyao:"解毒草",feijian:"乌木剑"};

  var prop="caoyao";

  console.log(container[prop]);

  “这!”叶小凡惊呼。

  看着叶小凡惊讶的样子,何老似乎有些得意。

  “小娃娃,这就是我教你的新技巧,对象不仅可以用点号(.)访问它的一个属性,也可以用中括号([])。如果用中括号,里面就允许再写一个变量。当然了,写字符串也是可以的。”

  似乎是担心叶小凡理解不了,叶老又补充了一行代码。

  console.log(container[prop]);

  过了好一会儿,叶小凡才回味过来,说道:“我明白了,如果事先属性的名称未知,或者调用的属性是动态变化的,就不能使用点号了。使用中括号可以最大程度地提升对象调用属性的灵活度!”

image.png

本文来自E先生的博客,如若转载,请注明出处:https://javajz.cn

留言区

联系人:
手   机:
内   容:
验证码:

历史留言

欢迎加Easy的QQ