使用字符串变量作为对象字段

Ant*_*nAL 3 javascript jquery properties

我需要选择一个属性来制作动画,然后做动画.

代码应如下所示:

var prop = "background-color";
switch( val )
{
   case 1: prop = "color";
   case 2: prop = "border-color";
   // ...
}
item.animate( {prop: "#00FF00"}, 1000 );
Run Code Online (Sandbox Code Playgroud)

JavaScript抱怨使用"prop"变量.

当我说的时候

item.animate( {"color": "#00FF00"}, 1000 );
Run Code Online (Sandbox Code Playgroud)

一切都好.

我认为,期望一个常量作为对象属性声明.

我怎样才能在运行时确定它?

Sea*_*oyd 5

这些是等价的:

// prop is a literal string here,
// not a variable
{prop: "#00FF00"}
Run Code Online (Sandbox Code Playgroud)

{"prop": "#00FF00"}
Run Code Online (Sandbox Code Playgroud)

你可能需要这样做:

var obj = {};
obj[prop]="#0000ff";
item.animate( obj, 1000 );
Run Code Online (Sandbox Code Playgroud)