col*_*nde 4 javascript jquery json
如何从JavaScript对象获取项目:
var items = [
{
ITEM:1,
AMOUNT:10
},
{
ITEM:2,
AMOUNT:20
}
];
Run Code Online (Sandbox Code Playgroud)
我希望能够做到这样的事情:
$(items).filter(ITEM == 1).AMOUNT;
Run Code Online (Sandbox Code Playgroud)
......会回来的10.
您正在创建一个对象数组.如果按顺序插入项目,您可以使用:
items[0].AMOUNT; // return the amount of the first item in the array
Run Code Online (Sandbox Code Playgroud)
但是,(使用纯JavaScript)您可能更喜欢利用JavaScript对象的哈希表特性,并使用以下内容:
var items = {
item1: {
amount: 10
},
item2: {
amount: 20
}
};
Run Code Online (Sandbox Code Playgroud)
然后你就可以使用下标表示法:
items['item1'].amount;
Run Code Online (Sandbox Code Playgroud)
...或点符号:
items.item1.amount;
Run Code Online (Sandbox Code Playgroud)
@ casablanca的解决方案是一个有效的替代方案,但请注意该filter()方法在O(n)中运行, 因为提供的选择器是针对数组的每个元素进行测试的.另一方面,哈希表中的项目可以在O(1)中找到(恒定时间).
| 归档时间: |
|
| 查看次数: |
11972 次 |
| 最近记录: |