老师我想请问下第二个alert的结果为什么是1

来源:7-3 [JavaScript]ES3执行上下文

hupiao

2016-04-10 22:08

第三部只涉及到了变量的声明 并没有给这个变量赋值1啊.为什么会alert出1呢?

写回答 关注

6回答

  • qq_方晓华_0
    2016-04-12 16:56:22

    1,2,3步里写的只是变量声明的步骤,func=1属于执行步骤没写在里面

  • qq_方晓华_0
    2016-04-12 16:53:52

    var func=1   =====》 var func   func=1

    如果

    console.log(func)  ===>undifined (func虽然声明但没赋值)

    var func=1;

    console.log(func)  ===>1(被赋值了)

           

  • qq_方晓华_0
    2016-04-12 16:48:58

    赋值是在声明完之后执行的,js中声明是会提前的操作的

    而你的console.log()是在赋值完之后才执行,所以显示的就是赋值后的值

  • qq_方晓华_0
    2016-04-11 13:02:20

    func=1 不就是赋值吗


    hupiao

    但是1,2,3步并没有提到赋值啊 难道声明的时候还包括赋值这个步骤?

    2016-04-11 13:21:36

    共 1 条回复 >

  • qq_方晓华_0
    2016-04-11 11:21:29

    你写了

    var func=1,console.log(func),输出的是它

    hupiao

    函数参数 函数声明 变量声明 并没有变量赋值啊

    2016-04-11 11:51:18

    共 1 条回复 >

  • 慕粉3133419
    2016-04-11 11:05:01

    仔细看第三条 变量声明 只是声明 但赋值是会覆盖的 

    hupiao

    函数参数 函数声明 变量声明 并没有变量赋值啊 第四步就是变量赋值 所以覆盖了?

    2016-04-11 11:51:56

    共 1 条回复 >

JavaScript深入浅出

由浅入深学习JS语言特性,且解析JS常见误区,从入门到掌握

281111 学习 · 1020 问题

查看课程

相似问题