JavaScript - 无法分配值

时间:2014-07-30 09:47:41

标签: javascript object reference

API正在返回一个我需要分配给对象中某个属性的值。

但是,当我尝试将此valuee分配给我的对象时,我收到错误:

Error Getting Data
Arguments[1]
0: ReferenceError
message: "p_r is not defined"
stack: (...)
get stack: function () { [native code] }
set stack: function () { [native code] }
__proto__: Error
callee: function (err){
length: 1
__proto__: Object

我尝试分配此变量的代码如下所示:

var AB = { pName:"AB", p_r:70, p_r_OK:80, logoURL:"../images/AB512.png" };
AB[p_r] = response[0].result;

AB对象之前已与p_r属性一起声明。我在哪里弄错了?

3 个答案:

答案 0 :(得分:5)

你需要使用数组符号的引号:

AB["p_r"] = response[0].result;

或使用点符号

AB.p_r = response[0].result;

否则解析器会认为您正在尝试使用名为p_r

的变量

答案 1 :(得分:4)

p_r是变量还是属性的名称?

如果p_r是属性的名称,则应使用''进行赋值,如:

AB['p_r'] = response[0].result;

答案 2 :(得分:1)

你可以使用

AB['p_r'] = response[0].result; OR

AB["p_r"] = response[0].result; OR
AB.p_r = response[0].result;