我有一个名为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