如何在javascript字典中使用键查找值

A_u*_*ser 14 javascript dictionary

我有一个关于Javascript字典的问题.我有一个字典,其中动态添加键值对,如下所示:

var Dict = []
var addpair = function (mykey , myvalue) [
  Dict.push({
    key:   mykey,
    value: myvalue
  });
}
Run Code Online (Sandbox Code Playgroud)

我将调用此函数并将其传递给不同的键和值.但现在我想根据密钥检索我的值,但我无法这样做.有谁能告诉我正确的方法?

var givevalue = function (my_key) {
  return Dict["'" +my_key +"'"]         // not working
  return Dict["'" +my_key +"'"].value // not working
}
Run Code Online (Sandbox Code Playgroud)

由于我的密钥是变量,我无法使用 Dict.my_key

谢谢.

Mat*_*son 26

JavaScript中的数组不使用字符串作为键.您可能会发现值存在,但键是整数.

如果你Dict成为一个对象,这将工作:

var dict = {};
var addPair = function (myKey, myValue) {
    dict[myKey] = myValue;
};
var giveValue = function (myKey) {
    return dict[myKey];
};
Run Code Online (Sandbox Code Playgroud)

myKey变量已经是一个字符串,因此您不需要更多引号.