javascript - 从 JavaScript 中选定键之前的键中获取值
问题描述
给定以下对象:
let test = {x: "a", y: "b"}
是否可以"a"
仅通过信息获得价值"y"
?
例如,我知道我可以"b"
通过获取值,test["y"]
但是否可以通过仅使用“y”以某种方式获取值“a”?
类似于伪代码的东西test["y" - 1]
我试过 test.getIndex("y") 所以我可以从中减去 1 但这似乎是不可能的。好奇这是否可行!
解决方案
这是可能的,但真的很奇怪。如果您发现自己需要这样的东西,请强烈考虑使用不同的数据结构。
获取对象的键,在该数组中找到您感兴趣的键的索引,然后导航到数组中的前一个键以获取其关联值。
let test = {x: "a", y: "b"};
const keys = Object.keys(test);
const index = keys.indexOf('y');
console.log(test[keys[index - 1]]);
通常,您不应该依赖对象属性顺序 - 不是因为它不能保证(它是),而是因为它会导致不直观的代码。
推荐阅读
- python - Tensorflow 随机输入大小
- arm - parallella fpga:如何从 pl 给 arm ps 的中断
- jquery - 用类展开最近的 div
- python-3.x - Python 3 for 循环不中断
- android - gcloud CLI:如何使用 clearPackageData 参数运行仪器测试?
- ruby-on-rails - 设计 URL Rails 的别名
- c - 从 c 中的文本文件读取浮点数时的值错误
- azure-stream-analytics - 在流分析中写入数据湖
- python - Django Admin中的多选表单
- c# - 找不到源“y”中事件 ID“x”的描述。从 eventvwr C# 读取“系统”事件日志