0

我在函数的参数中添加了一个var:

//
msg = "test message";
date = "02-28-2013";
cal.setData({ date : msg});
//
//this can't work

但是,以下一个效果很好

//
msg = "test message";
cal.setData({ "02-28-2013" : msg});
//

但我需要使用包含var的那个。我怎样才能让它工作?

谢谢

4

1 回答 1

2

尝试这个:

var param = {}
param[ date ] = msg;
cal.setData( param );

为了将变量设置为对象的属性名称,您必须使用括号表示法。为此,首先创建一个空对象,然后添加动态属性,如上所示。

在您的第一个示例中,传递给函数的对象包含一个名为date的属性,而不是具有变量值名称的属性date

于 2013-02-02T16:08:08.573 回答