今天循环下面的嵌套对象数组
for (let j = 0; j < a.length; j++) {
for (let i = 0; i < a[i].b.length; i++) { ... }
}
发现一个问题
展开数组后发现:出现了
Value below was evaluated just now
没展开的值。究其原因,其实是Chrome Console.log()
点击展开数组时,会重新去读一遍内存真实的值然后显示,所以展开后都是最终值
我的解决方法:
添加定时器,将循环移到线程池等待下次循环从而获取最终数据
for (let j = 0; j < a.length; j++) {
setTimeout(() => {
for (let i = 0; i < a[i].b.length; i++) { ... }
}
}