0

我可能不知道该怎么称呼它,但本质上我想动态传递属性的名称,然后在我的对象数据属性中获取该属性的值。像这样的东西:

function myFunc(e, myProperty) {

    alert( e.data[myProperty] );
}

var myValue = myFunc(myObject, "someField");

我得到值undefined

我认为 ColdFusion 中的等价物是 [myPropertyName] ,我想知道 JavaScript 中是否有类似的东西。

更新:显然获取值有效,但不是我试图将动态属性作为名称/值对传递给 AJAX 请求。

var myValue = e.data[myProperty];

var myData = { myProperty: myValue }

在上面的代码中,myProperty被作为“myProperty”传递

4

2 回答 2

1

请试试:

var myValue = e.data[myProperty];

var myData = { };
myData[myProperty] = myValue;

这应该允许您动态创建一个具有名为的属性的对象myProperty

于 2013-01-10T20:41:30.777 回答
0

为我工作:

function myFunc(e, myProperty) {
    alert( e.data[myProperty] );
}

myObject = { data: {} };
myObject.data['someField'] = 123;
var myValue = myFunc(myObject, "someField");
于 2013-01-10T19:35:48.953 回答