我的dojo课程中有以下功能:
dojo.declare("someclass", null, {
getSomeObject: function(id, name, description) {
console.log("id=", id, ", name=", name, ", description=", description);
var newObj = {
"id": id,
"name": name,
"description": description
};
console.log("newObj=", newObj);
return newObj;
}
});
在升级我正在使用的产品之前,这很好。当我现在运行代码时,不知何故在“newObj”中,所有属性值都变成了数组 - 即当“123”作为id值传递给函数时,在newObj中,“id”属性值为[“123”]。< / p>
我尝试过使用不同的方法来创建对象 - 使用“new Object()”等等。似乎没有任何帮助。当我在旧产品中运行相同的代码时,它按预期工作!!!
以下是Google Chrome控制台的输出 -
id= 5962960 , name= sng2 , description= test
newObj=
Object
_RI: true
description: Array[1]
id: Array[1]
name: Array[1]
__proto__: Object
任何帮助???
答案 0 :(得分:1)
我想您使用的是ItemFileReadStore
或ItemFileWriteStore
。
那么绝对正常,这些存储在内部使用数组。
要获得您应该按照doc:
store.getValue(storeItem, "property");
或者如果您确定该值表示的价值,您可以通过+ ""