使用JavaScript在关联数组中查找键

使用JavaScript在关联数组中查找键,javascript,arrays,key,associative-array,Javascript,Arrays,Key,Associative Array,使用此关联数组,我希望找到一个特定的键: var veggie_prices = new Array(); veggie_prices["serves6"] = 20; veggie_prices["serves8"] = 25; veggie_prices["serves10"] = 35; 如果我在数组中循环,我可以找到以下值: var x = veggie_prices[i].value; 但如何找到钥匙呢 var y = veggie_prices[i].key; 要直接回答您的问

使用此关联数组,我希望找到一个特定的键:

var veggie_prices = new Array();
veggie_prices["serves6"] = 20;
veggie_prices["serves8"] = 25;
veggie_prices["serves10"] = 35;
如果我在数组中循环,我可以找到以下值:

var x = veggie_prices[i].value;
但如何找到钥匙呢

var y = veggie_prices[i].key;

要直接回答您的问题,请在循环中为..使用

var veggie_prices = new Array();
veggie_prices["serves6"] = 20;
veggie_prices["serves8"] = 25;
veggie_prices["serves10"] = 35;
for (var i in veggie_prices) {
  console.log(i); // output: serves6, etc..
}

然而,需要明确的是,javascript没有关联数组。您拥有的是一个数组类型的对象,并且您只向其添加了几个属性,除了普通的(尽管目前为空)索引和其他本机数组属性/方法(例如
.length
.pop()
,等等)

要直接回答您的问题,请使用
for..in
循环

var veggie_prices = new Array();
veggie_prices["serves6"] = 20;
veggie_prices["serves8"] = 25;
veggie_prices["serves10"] = 35;
for (var i in veggie_prices) {
  console.log(i); // output: serves6, etc..
}

然而,需要明确的是,javascript没有关联数组。您拥有的是一个数组类型的对象,除了普通索引(尽管目前为空)和其他本机数组属性/方法(例如
.length
.pop()
,等等)之外,您还向其添加了几个属性。

为什么要使用数组?你能用物体来代替吗

var veggie_prices = {};
veggie_prices["serves6"] = 20;
veggie_prices["serves8"] = 25;
veggie_prices["serves10"] = 35;

Object.keys(veggie_prices).forEach((key) => {
  console.log('Key is: ' + key);
  console.log('Value is: ' + veggie_prices[key]);
});

为什么要使用数组?你能用物体来代替吗

var veggie_prices = {};
veggie_prices["serves6"] = 20;
veggie_prices["serves8"] = 25;
veggie_prices["serves10"] = 35;

Object.keys(veggie_prices).forEach((key) => {
  console.log('Key is: ' + key);
  console.log('Value is: ' + veggie_prices[key]);
});

是将移动到对象。当前,此列表使用单选按钮控件在列表上进行选择。为了找到选中的单选按钮,我使用.checked方法和.value来获取值。使用.key不会产生该键。不知道为什么。谢谢您的回答。是将移动到对象。当前,此列表使用单选按钮控件在列表上进行选择。为了找到选中的单选按钮,我使用.checked方法和.value来获取值。使用.key不会产生该键。不知道为什么。谢谢你的回答。只需添加上下文-目前,此列表正在使用单选按钮控件在列表上进行选择。为了找到带有for循环的选中单选按钮,我使用.checked方法和.value来获取值。使用.key不会产生该键。不知道为什么。谢谢你的回答。只需添加上下文-目前,此列表正在使用单选按钮控件在列表上进行选择。为了找到带有for循环的选中单选按钮,我使用.checked方法和.value来获取值。使用.key不会产生该键。不知道为什么。谢谢你的回答。