概述
一个从数据库取回来的对象数组:var data = [{a:1},{a:2}]
for…in遍历
for(let i=0; i < data.length; i++){
let opt = data[i]
for(let key in opt){
console.log(key)
}
}
for…in语句以任意顺序遍历一个对象的可枚举属性。对于每个不同的属性,语句都会被执行。
如果一个对象的属性不是可枚举属性,那么这个属性就会被for…in迭代出来,包括继承的可枚举属性
所以当你遍历时会出现很多莫名其妙的字段:
原因
从数据库取回来的对象数组数据,是指向一个地址(堆栈问题),它里面拥有很多可枚举属性什么的
解决:遍历前使用深拷贝处理
var data = JSON.parse(JSON.stringify([{a:1},{a:2}]))
进行上面处理后,再遍历就正常了~~
最后
以上就是含蓄棉花糖为你收集整理的node提取对象数组遍历操作 --深拷贝的全部内容,希望文章能够帮你解决node提取对象数组遍历操作 --深拷贝所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复