js基础练习题 第20天

该篇文章是该系列的第二十天。本文的主要习题包括new命令的执行过程,setTimeout机制,Promise机制,JS事件循环机制等,希望大家有所收获。

正文

1.当使用new命令时,实际上执行了哪些操作?

2.如果指定setTimeout(f, 0),那么f会立即执行吗?

3.

1
2
3
4
5
6
7
8
function f1() {
return new Promise(function(resolve,reject) {
resolve(1);
});
}
function f2() {
return 2;
}

  • f1().then(function(){ return f2(); }).then(console.log)输出___________,
  • f1().then(function(){ f2(); }).then(console.log)输出___________,
  • f1().then(f2()).then(console.log)输出___________,
  • f1().then(f2).then(console.log)输出___________。

4.使用Promise完成图片的加载。编写一个preLoadImg(url)函数,其中url参数为图片的路径,当图片加载完成时,提示加载成功,否则提示加载失败。



5.当下列代码执行后,会在控制台依次输出______________________。

1
2
3
4
5
6
7
8
9
10
11
12
setTimeout(() => {
console.log(1);
}, 0);
new Promise((resolve, reject) => {
console.log(2);
resolve(3);
}).then(console.log);
const f = async () => {
await console.log(4);
};
f().then(console.log);
console.log(5);

6.['1', '1', '1'].map(parseInt)的返回值为___________。

7.[typeof null, null instanceof Object]的结果为___________。

8.[3, 2, 1].reduce(Math.pow)的结果为___________。

说明

1.题目中出现的JS指的是采用ECMAScript 2015及之后标准的JavaScript

2.题目中,若有错误和需完善的地方,可在下方留言反馈哈~~

3.查看答案和解析,请点击js基础练习题第20天 答案及解析

--本文结束 感谢阅读--
创作十分不易,原创更应鼓励