ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
1、`B` ~~~javascript 1.console.log(a); 2.var a=12; 3.function fn(){ 4. console.log(a); 5. var a=13; 6.} 7.fn(); 8.console.log(a); 9. 10./* 11. A、undefined 12 13 12. B、undefined undefined 12 *** 13. C、undefined undefined 13 14. D、有程序报错 15.*/ ~~~ 2、`A` ~~~javascript 1.console.log(a); //undefined 2.var a=12; 3.function fn(){ 4. console.log(a); //12 5. a=13; 6.} 7.fn(); 8.console.log(a); //13 9. 10./* 11. A、undefined 12 13 *** 12. B、undefined undefined 12 13. C、undefined undefined 13 14. D、有程序报错 15.*/ ~~~ 3、`D` ~~~javascript 1.console.log(a); //没有变量提升,报错 2.a=12; 3.function fn(){ 4. console.log(a); 5. a=13; 6.} 7.fn(); 8.console.log(a); 9. 10./* 11. A、undefined 12 13 12. B、undefined undefined 12 13. C、undefined undefined 13 14. D、有程序报错 15.*/ ~~~ 4、`B` ~~~javascript 1.var foo=1; 2.function bar(){ 3. if(!foo){ 4. var foo=10; 5. } 6. console.log(foo); 7.} 8.bar(); 9. 10./* 11. A、1 12. B、10 *** 13. C、undefined 14. D、报错 15.*/ /* * 变量提升 * var foo; * bar=aaafff000; */ var foo = 1; function bar() { /* * 形参赋值:无 * 变量提升 * var foo; (不管条件是否成立,都要进行变量提升, * 新浏览器中对于判断体中的函数只是提前声明) */ if (!foo) {//=>!undefined =>TRUE,私有变量赋值为10 var foo = 10; } console.log(foo);//=>10 } bar(); ~~~ 5、`C` ~~~javascript 1.var n=0; 2.function a(){ 3. var n=10; 4. function b(){ 5. n++; 6. console.log(n); 7. } 8. b(); 9. return b; 10.} 11.var c=a(); 12.c(); 13.console.log(n); 14. 15. 16./* 17. A、1 1 1 18. B、11 11 0 19. C、11 12 0 *** 20. D、11 12 12 21.*/ ~~~ ![](https://img.kancloud.cn/1b/f9/1bf98afbd2535dd5cada57562a9a88f6_2664x1080.png)