Javascript对象访问

Dou*_*eux 2 javascript object

我正在使用名为APE(Ajax Push Engine)的Comet Push Engine,每当我收到一个实时事件时,我会在一个名为'raw'的javascript对象中收到它.

因此,如果原始对象包含'location'值,我可以打印'raw.location',它会给我值,

alert(raw.location);
Run Code Online (Sandbox Code Playgroud)

所以我有另一个名为currentSensor的对象,它包含一个这样的值(在我的例子中它将包含字符串'location'):

currentSensor.value

如何以编程方式使用currentSensor.value变量来访问"原始"对象?我试过这个:

var subsensor = currentSensor.sensorKey;
Run Code Online (Sandbox Code Playgroud)

然后

alert(raw.subsensor);
Run Code Online (Sandbox Code Playgroud)

但我一直得到未定义,因为原始对象不包含一个名为"subsensor"的键,它实际上是"位置".我希望这是有道理的!

谢谢!

Que*_*tin 5

使用点表示法时,使用文字属性名称.如果要使用字符串,请使用方括号表示法.

foo.bar === foo['bar'];
Run Code Online (Sandbox Code Playgroud)

字符串可以是变量.

baz = 'bar';
foo.bar === foo[baz];
Run Code Online (Sandbox Code Playgroud)