JavaScript基础练习 -- 第四天

版权声明:版权所有,转载、引用请指明出处! https://blog.csdn.net/qq_30216191/article/details/82119725

前言:

在本栏中,我将每天更新一些JavaScript基础练习题。这些习题,大部分是我自己总结的。其中很大一部分是我在学习过程中记下的笔记或者遇到的坑,还有就是很重要很重要的基础概念,被我转换为了习题的形式。这部分题目,我觉得非常适合刚入门前端开发的朋友们,希望大家有所收获,这就足够咯~~

第四天

正文:

仔细阅读以下代码段,回答下列问题:(并非原创)

for (var i = 0; i < 5; i++) { 
  setTimeout(function() { console.log(i); }, 1000);
}  
console.log(i);
  1. 该代码段的运行结果是什么?
  2. 若用箭头(=>)表示其前后的两次输出之间有 1 秒的时间间隔,而逗号(,)表示其前后的两次输出之间的时间间隔可以忽略,那么代码实际运行的结果该如何描述?
  3. 如果期望代码的输出变成:5 => 0,1,2,3,4,该怎么改造代码?给出你的解决方案
  4. 如果期望代码的输出变成 0 => 1 => 2 => 3 => 4 => 5,并且要求原有的代码块中的循环和两处 console.log 不变,该怎么改造代码?给出你的解决方案
  5. setTimeout定时是否准确?为什么?
  6. 简单谈谈你对闭包的理解?

说明:

  1. 题目中出现的JS指的是采用ECMAScript 2015及之后标准的JavaScript
  2. 欲查看word版习题和答案,请访问:https://download.csdn.net/download/qq_30216191/10630107
  3. 题目和答案中,若有错误和需完善的地方,请及时给予我反馈哈~~

 

猜你喜欢

转载自blog.csdn.net/qq_30216191/article/details/82119725