最近遇到诡异的事情。请看下面的代码:
if(typeof(field_list_data_get_data[lastIndex]) == 'undefined'){
dlog('执行1');
dlog(field_list_data_get_data);
field_list_data_get_data[lastIndex] = {};
dlog('执行2');
dlog(field_list_data_get_data);
}
控制台输出截图如下:
那么问题来了。
”执行1“这个位置他是没有任何东西的。怎么一行field_list_data_get_data[lastIndex] = {}之后,到了“执行2”就无缘无故多了数据出来了呢?
这个怎么解释呢?
dlog函数:
function dlog(msg){
console.log(msg);
}
異步
還是會造成影響,再不改動原始邏輯下,寫了個例子模擬你的情況:jsFiddle
估計你可能有用
loop
處理這段邏輯,並且含了一些異步操作估计是有别的地方的代码影响了
为什么你不在这里面单步运行一下,看看到底是不是这里的问题?