<ul> <li>click me</li> <li>click me</li> <li>click me</li> <li>click me</li></ul>运行如下代码:var elements=document.getElementsByTagName('li');var length=elements.length;for(var i=0;i<length;i++){ elements[i].onclick=function(){ alert(i); }}对于答案4,4,4,4,原题目下各种解释,看着有点乱。因为看到了这张图onclick在任务队列中,我应该没理解错吧。而我的想法是:这是不是跟js运行机制的任务队列有关,onclick事件添加到任务队列中,等到执行栈中的任务结束之后再执行任务队列中的任务,这样for循环已经结束,故输出了4个4.不知道这样理解对不对?附上题目链接:https://www.nowcoder.com/ques...
添加回答
举报
0/150
提交
取消