[英]Attribute value turning into array unexpectedly when creating object in javascript dojo
我的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”]。
我嘗試使用不同的方式來創建對象-使用“ 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
有幫助嗎???
我想您正在使用ItemFileReadStore
或ItemFileWriteStore
。 那么這是絕對正常的,這些存儲在內部可以處理數組。 要獲取值,您應該按照文檔中的建議進行操作:
store.getValue(storeItem, "property");
或者,如果您確定該值可以正確表示,則可以通過執行+ ""
來安全地鍵入
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.