javascript_11-函数面试题

函数经典面试题

1、----------------------------

// 解析器:
// 预解析 全局作用域
// 先找var 、function 和参数
// 找到var和function之后,会把var和function提前
//num fun
// 从上到下一行一行执行代码
// num = 10;
// fun();
// 执行到fun后,进入局部作用域
// 预解析
// num
// 从上到下一行一行执行代码

var num;
function fun() {
    var num;
    console.log(num);
    num = 20;
}
num = 18;
// var num = 10;
// fun();
// function fun() {
//     console.log(num);
//     var num = 20;
// }

2、-------------------------------------------

var a = 18;
f1();
function f1() {
    var b = 9;
    console.log(a);
    console.log(b);
    var a = '123';
}

var a;
function f1() {
    var b;
    var a;
    b = 9;
    console.log(a);
    console.log(b);
    a = '123';
}
a = 18;
f1();


var a=18;
function f1(){
    //先在当前作用域下找变量a,如果当前作用域没有变量a,会去上一级作用域找变量a。
    // 如果找到了,就获取a的值。如果都找不到,会显示a is not defined。
    console.log(a);
}
f1();

3、------------------------------------

// 解析器
// 全局作用域 预解析 var function 参数
    // 预解析
        // function f1()
    // 一行一行执行代码
        // f1() 局部作用域
            // 预解析
                // var a;
            // 一行一行解析代码

function f1(){
// a 局部变量
// b c全局变量
var a;
a=b=c=9;
console.log(a);
console.log(b);
console.log(c);
}
f1();
console.log(c);
console.log(b);
console.log(a);


// f1();
// console.log(c);
// console.log(b);
// console.log(a);
// function f1(){
//     var a=b=c=9;
//     console.log(a);
//     console.log(b);
//     console.log(c);
// }
posted @ 2019-07-13 21:51  严格的阿b  阅读(424)  评论(0编辑  收藏  举报