js高级-函数变量提升
var a = 10;
function f1(){
console.log(a) //undefined 函数变量提升了 函数执行之前想创建了函数的EC 把函数里面声明的变量初始化undefined a先访问了f1内部的了
var a = 19; 给局部变量赋值
console.log(a) 19
}
f1();
// 面试题
1、
var a = 18;
function d(){
console.log(a) //undefined 内部变量a提升
var a = {age:19}
console.log(a) // {age:19}
}
d();
console.log(a) //18
2、
if(!("a" in window)){ //"a" in window true 因为 var a =9 变量提升了
var a = 1;
}
console.log(a) //undefined
3、
console.log(a) //function a(){}
var a = 20;
console.log(a) //20
function a(){
}
4、
f()
console.log(a) // 报错未定义
console.log(b) //9
console.log(c) //9
function f(){
var a = b = c = 9; a局部变量 bc全局变量 var a= 9,b=9,c=9;定义三个局部变量
console.log(a) //9
console.log(b) //9
console.log(c) //9
}
5、
f()
function f(){
for(var k=0; k<10; k++){
console.log(k) //0-9
}
console.log(k) //10
}
最新文章
- Ubuntu 汉化时ubuntu software database is broken错误解决
- delegate notification kvo三者比较
- ADB pm 命令
- GIT在iOS开发中的使用
- BZOJ2061 : Country
- a+=b 是什么意思?
- 实时监听输入框值变化的完美方案:oninput &; onpropertychange
- Asp.net MVC4 Knockoutjs BootStrap Ace NinJect Jqgrid sqlserver2008
- 【笨嘴拙舌WINDOWS】消息机制
- [ERROR] Unknown/unsupported storage engine: InnoDB
- onActivityResult不执行 或者 onActivityResult的解决方法
- PHP高级编程SPL
- cygwin的安装使用
- 【算法专题】工欲善其事必先利其器—— C++ STL中vector(向量/不定长数组)的常用方法总结
- 内联函数 inline 漫谈
- elasticsearch+kibana+metricbeat安装部署方法
- .netcore 模块积累
- 再见了Server对象,拥抱IHostingEnvironment服务对象(.net core)
- DotNetBar中Supergrid显示树形数据
- logstash 解析日志文件