javascript - 键/值对的值也可以是键吗?

标签 javascript object key

enter image description here

在此示例中,要记录带有“title”和“director”键的属性值,使用 obj[key]。因为我们已经处于对象的执行上下文中:在本例中是电影。 “Obj[key]”中的 Obj 必须引用 title: 'a'、director: 'b' 以及这些对象的值的 key,因此“a”和“b”被标记为键,对吗?

这些“键类型”值也可以用 obj[value] 记录吗?

<小时/>

这是类(class)中的一个示例,但讲师没有很好地解释它,所以我可能花了两个小时试图理解术语。我希望这是正确的,如果不是;我真的很感激我所犯的任何错误。

提前致谢

最佳答案

将图像中的代码放在这里以便于引用,还稍微更改了日志以明确哪个是键,哪个是值:

const movie = {
  title: 'a',
  releaseYar: 2018,
  rating: 4.5,
  director: 'b'
};

showProperties(movie);

function showProperties(obj) {
  for (let key in obj) 
    if (typeof obj[key] === 'string') {
      console.log('key -->', key);
      console.log('value -->', obj[key]);
    }
}

不,该示例中的“a”和“b”不是键,而是值。 在该示例中,movie 是对象。电影对象的键是 titlereleaseYear ratingdirector。顺便说一句, key 只是“属性”的另一个名称。

showProperties 函数中,您循环遍历每个键 - 即。在每次迭代中,key 首先是 title,然后是 releaseYear,依此类推。 第一次迭代中的 obj[key] 将为 movie['title'],其值为 a

控制台日志显示 key ,后跟 movie[key] 的值。因此,第一个标题的键是 title,而 a 的值。

关于javascript - 键/值对的值也可以是键吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61124423/

相关文章:

java - 如何在 JFrame 中动态重绘 JPanel?

python - 在 Python 中同时向字典添加键和 +1 值

javascript - 如何在没有html的情况下使用angularjs(过滤器服务)(用于chrome扩展)

javascript - 谷歌堆积条形图颜色

javascript - 如何使用 JavaScript 动态创建数组?

object - 一位大师可以拥有多少个细节对象?

javascript - 为什么我的对象中的函数返回未定义?

python - SPSS/Python - 访问变量标签

JavaScript 关联数组变量

javascript - Jquery 代码未在测试站点上运行