群里的

1、写出输出结果

function foo() {
    console.log(a);
}

function bar() {
    var a=3;
    foo();
}
 
var a=2;
bar();

输出:2

2、输出结果

setTimeout(()=>{
    console.log(100);
},0);
console.log(200);
Promise.reject(function () {
    console.log(300);
})

输出:200
报错
100
抛出reject后不对其进行处理会报错

3、输出结果

console.log(fn);
function fn() {
}
var fn = 'hello';
console.log(fn);

输出: [Function: fn]
hello

其实代码等价于

var fn;
console.log(fn);
function fn() {
}
fn = 'hello';
console.log(fn);

变量定义会提升,但是赋值部分并不会提升;

4、说说从输入URL到页面展现都发生了什么?

这个问题要另外开一篇文章,写全一点。

你可能感兴趣的:(群里的)