Javascript 试图理解一些与js中window.onload相关的代码
问题:Javascript 试图理解一些与js中window.onload相关的代码,javascript,Javascript,问题: 对于window.tdiff->[未定义,1372646227664],为什么不:[,因为当运行到code:window.tdiff时,它仍然是一个空数组 对于window.tdiff.reduce(fred)->1372646227664,window.tdiff=[undefined,1372646227664],undefined-1372646227664,应该是NaN,为什么显示1372646227664 因为数组是一种复杂的javascript类型,其值通过引用传递,所以控制
window.tdiff->[未定义,1372646227664]
,为什么不:[
,因为当运行到code:window.tdiff
时,它仍然是一个空数组window.tdiff.reduce(fred)->1372646227664
,window.tdiff=[undefined,1372646227664]
,undefined-1372646227664
,应该是NaN
,为什么显示1372646227664
console.log
之前,它填充diff
数组的第二个元素reduce
对数组中存在的每个元素执行一次回调函数,不包括数组中的孔()window.onload load 1372646227664 [undefined, 1372646227664] 1372646227664
正如Arun p Johny在另一个答案中指出的,reduce并没有对未定义的元素应用fred(),这就是为什么不能得到NaN
window.onload load 1372646227664 [undefined, 1372646227664] 1372646227664
> (window.tdiff[1] = Date.now()) && window.tdiff.reduce(fred) )