💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
以下代码的执行结果是神马? ~~~ function test() { console.log(a); console.log(foo()); var a = 1; function foo() { return 2; } } test(); ~~~ 结果是: ``` undefined 2 ``` 要答对此题要知道变量提升的概念:var和函数声明都有提升的作用,也就是说都被提升到函数体的顶部。可以认为提升之后的代码是这样的: ~~~ function test() { var a; function foo() { return 2; } console.log(a); console.log(foo()); a=1; } test(); ~~~ 这样你就能看懂答案了吧?