永发信息网

JS函数调用及作用域链

答案:1  悬赏:60  手机版
解决时间 2021-01-28 05:48
  • 提问者网友:相思似海深
  • 2021-01-27 17:57
(function() {<br>   a = function(){<br>      var xx = new Array();<br>      for(var i=1;i&lt;=3;i++){<br>        xx2(xx,'v'+i,'x'+i);<br>      }<br>      alert(&quot;xx.length = &quot; + xx.length);   //  ??? 此处的xx.length为何等于0<br>      return xx;<br>   };<br>   xx2 = function(xx,key,value) {<br>      xx[key] = value;<br>   };<br>  var b = a();<br>  alert(b);  // 显示的b为何为空?<br>})();<br>望高手指点下……  急……
最佳答案
  • 五星知识达人网友:轻熟杀无赦
  • 2021-01-27 19:30
数组索引要为整形 即xx[key] 中的key必须是整形的,你传的‘v’+i 是不对的,应该这样写:<br> (function() {<br>    a = function() {<br>    var xx = new Array();<br>    for (var i = 1; i &lt;= 3; i++) {<br>    xx2(xx, i, 'x' + i);<br>    }<br>    alert(&quot;xx.length = &quot; + xx.length);   //  ??? 此处的xx.length为何等于0<br>    return xx;<br>    };<br>    xx2 = function(xx, key, value) {<br>    xx[key] = value;<br>    };<br>    var b = a();<br>    alert(b);  // 显示的b为何为空?<br>    })();
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯