handyxuefeng 2010-09-30 16:08
浏览 317
已采纳

一段诡异的执行结果

下面的是看了一些前辈写的代码后,自己改了一下,发现出来的结果难以想像,望那位高手能解解一下。
var arr=[];
var Test=function(){
var num_arr=["1","2","3","4"];
for(var i=0;i<num_arr.length;i++){
var o={
id:i
,fun:~ function(){ return i ;}()
};
arr.push(o);
}
return arr;
}();

for(var j=0;j<arr.length;j++)
{
alert("result="+arr[j].fun);

}

  • 写回答

13条回答

  • iteye_20833 2010-09-30 17:09
    关注

    要下班放假了,给分吧

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(12条)

报告相同问题?