如何获取值';动态';来自javascript中的关联数组?

如何获取值';动态';来自javascript中的关联数组?,javascript,associative-array,Javascript,Associative Array,我试图从存储在字符串变量proyNombre上的键获取一个值,但每当我通过常用方法“MyAssociationArray.MyKey”调用它时,它都会获取变量“proyNombre”作为键,而不是获取其值并将其作为键传递 proyectos.each(function(index){ var proyNombre = this.value; if(!(proyNombre in myArray)){ // whenever the variable is undefined,

我试图从存储在字符串变量proyNombre上的键获取一个值,但每当我通过常用方法“MyAssociationArray.MyKey”调用它时,它都会获取变量“proyNombre”作为键,而不是获取其值并将其作为键传递

proyectos.each(function(index){
    var proyNombre = this.value;

    if(!(proyNombre in myArray)){ // whenever the variable is undefined, define it
        myArray[proyNombre] = horas[index].value-0 + minutos[index].value/60;
    }
    else{
        console.log(myArray.proyNombre); //This doesnt work, it tries to give me the value for the key 'proyNombre' instead of looking for the proyNombre variable
        console.log(myArray.this.value); //doesnt work either
    }

});
尝试:

myArray实际上是javascript中的一个对象。您可以使用
object.propertyName
object['propertyName']
访问对象属性。如果变量
proyNombre
包含属性名(它确实包含属性名),则可以使用第二种形式,就像我上面所做的那样<代码>对象。proyNombre无效-proyNombre是一个变量。例如,您不能执行以下操作:

var myObject = {};
myObject.test = 'test string';

var s = 'test';
console.log(myObject.s); // wrong!!
但你可以这样做:

console.log(myObject.test);
console.log(myObject['test']);
console.log(myObject[s]);
尝试:

myArray实际上是javascript中的一个对象。您可以使用
object.propertyName
object['propertyName']
访问对象属性。如果变量
proyNombre
包含属性名(它确实包含属性名),则可以使用第二种形式,就像我上面所做的那样<代码>对象。proyNombre无效-proyNombre是一个变量。例如,您不能执行以下操作:

var myObject = {};
myObject.test = 'test string';

var s = 'test';
console.log(myObject.s); // wrong!!
但你可以这样做:

console.log(myObject.test);
console.log(myObject['test']);
console.log(myObject[s]);

只需使用
myArray[proyNombre]

访问值,只需使用
myArray[proyNombre]
访问值,您需要使用与设置值相同的语法:

console.log(myArray[proyNombre]);

您需要使用与设置值相同的语法:

console.log(myArray[proyNombre]);

你在作业中做得很好:myArray[proyNombre]。可以使用相同的方法检索变量

如果您更改:

console.log(myArray.proyNombre);
console.log(myArray.this.value);

应该记录两次相同的值(由变量proyNombre表示的键的值)


的确,Javascript没有关联数组,但Javascript中的对象在访问其成员时可以被视为关联数组。

您在赋值中做得很好:myArray[proyNombre]。可以使用相同的方法检索变量

如果您更改:

console.log(myArray.proyNombre);
console.log(myArray.this.value);

应该记录两次相同的值(由变量proyNombre表示的键的值)


的确,Javascript没有关联数组,但Javascript中的对象在访问其成员时可以被视为关联数组。

请注意,Javascript没有关联数组,只有对象。请注意,Javascript没有关联数组,只有对象。谢谢大家,我对第一个回答给出了最好的答案,你的两种解决方案都有效。非常感谢。谢谢你们,我给了第一个回答的最好答案,你们的两个解决方案都有效。非常感谢。每当8分钟最佳答案计时器让我每当8分钟最佳答案计时器让我知道你从sje397Nope复制了你的answe,这是最简单的Javascript编程问题:)似乎你从sje397Nope复制了你的answe,这是最简单的Javascript编程问题:)