我有一個名爲selectedArray
的數組。這是一個對象數組,這裏是一個示例:如何從「[object Object]」獲取值
selectedArray
:Array[1]
0:Object
category_id:"8"
created_at:"2016-11-04 14:14:28"
lft:"17"
name:"Felt Materials"
rgt:"22"
updated_at:"-0001-11-30 0:00:00"
__proto__:Object
我在下面有下面的代碼。它通過selectedArray
循環。該循環查看名爲nodesWithchildren
的構造相同的數組的值爲lft
和rgt
。當它發現符合我希望它拉出該對象並創建一個新的數組稱爲childNodes
var childNodes=[];
for(i=0; i < selectedArray.length; i++){
if((selectedArray[i].lft /1) > (nodesWithchildren[0].lft /1) && (selectedArray[i].rgt/ 1) < (nodesWithchildren[0].rgt/1)) {
childNodes += selectedArray[i];
}
}
現在這一切工作除了一個問題很大的條件的對象,childNodes
出來是這樣的: "[object Object][object Object]"
我是Javascript新手,我整天都在用谷歌搜索如何將它轉換爲與selectedArray
相同的格式。我甚至沒有成功解析這些對象,因爲我發現大多數示例都需要對這些對象進行訪問。但是,如果我這樣做,我可以拉出個別值作爲字符串:childNodes += selectedArray[i].name
;
但對我來說這是不夠好,因爲我的代碼下一塊使用filter
並希望看到相同的格式,即兩個數組:
var filtered=selectedArray.filter(function(e){return this.indexOf(e)<0;},childNodes);
有什麼建議? TKS!
從現在開始,[對象對象]應該是一個告訴你的跡象,因爲有些事情是不對的! ......除非那真的是你所期待的。 – chazsolo