javascript - JavaScript 中关联数组的键排序和索引访问

标签 javascript html arrays

我有一个关联数组,例如:

var arr = {};
arr['alz'] = '15a';
arr['aly'] = '16b';
arr['alx'] = '17a';
arr['alw'] = '09c';

我需要找到任何选定元素的上一个和下一个键。比如说,对于键“aly”,它将是“alz”和“alx”。如果可能,我想通过索引而不是键访问数组。

目前,我正在使用包含键的单独数组来执行此操作,例如

var arrkeys = ['alz','aly','alx','alw'];

最佳答案

对象属性的顺序未定义。你可以使用这个结构...

[{ key: 'alz', value: '15a'},
 { key: 'aly', value: '16b'},
 { key: 'alx', value: '17a'}]

...虽然搜索具有给定键的元素(比如“给我 key'alz' 的元素)并不像与简单的对象。这就是为什么像您一样使用它 - 为索引排序提供单独的数组 - 是另一种常见方法。您可以将此数组附加到该对象,顺便说一句:

var arr={};
arr['alz']='15a';
arr['aly']='16b';
arr['alx']='17a';
arr['alw']='09c';
arr._keysOrder = ['alz', 'aly', 'alx', 'alw'];

关于javascript - JavaScript 中关联数组的键排序和索引访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14086017/

相关文章:

javascript - JWplayer Javascript 交互不起作用

javascript - modal.js 中的匿名函数定义

javascript - 以编程方式将单个事件监听器添加到多个 div 会导致所有受影响的 div 上出现相同的函数

c# - Array Slice 创建新数组

javascript - 如何使用加密创建随机盐哈希

javascript - 如何向 textfield.JS/Jquery 中具有特定文本值的 <img> 标签添加属性

javascript - 单击带有表单的打开弹出窗口,然后提交下载并关闭它!如何?

javascript - 如何防止绝对定位元素被切断并仍然保持盒子阴影包围父div?

java - 我可以在将对象与另一个数组进行比较时更改对象的一个​​值吗?

ios - 如何合并两个静态数组