为什么会这样,展开是有元素的,但是上面显示的却是0?不是应该像下面这样吗?
这是因为展开前knqk的长度还是0,等到你展开的时候它的长度变成了2,可能是由于某个定时器或其他异步操作更新了这个数组。
knqk
你可以用下面的代码来验证:
var arr = []; var o = {detail:{}, knqk:arr}; setTimeout(function(){arr[0]=1;arr[1]=2;}, 100); console.log(o);
数组的第一个元素下表不就是0
这是因为展开前
knqk
的长度还是0,等到你展开的时候它的长度变成了2,可能是由于某个定时器或其他异步操作更新了这个数组。你可以用下面的代码来验证:
数组的第一个元素下表不就是0