JavaScript中变量提升(变量提升和函数提升)

详解javascript中的变量提升和函数提升

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JavaScript中变量提升</title>
<script type="text/javascript">

foo(); //结果为foo
function foo() {
	console.log('foo');
}
var foo = 2;


//
// hello(); //报错TypeError: hello is not a function
var hello = function() {
    console.log('江西省赣州市于都县');
}
hello(); //结果为江西省赣州市于都县

/*
上面代码类似于如下代码:
var hello; //变量提升,此时该变量的默认值是undefined
//hello(); //所以这句会报错TypeError: hello is not a function
hello = function() {
    console.log('江西省赣州市于都县');
}
hello(); //结果为江西省赣州市于都县
*/


console.log(fn); //结果为function fn()
function fn(){}
var fn = '于都县';
console.log(fn); //结果为于都县


console.log(fn2); //结果为undefined
// fn2(); //报错TypeError: fn2 is not a function
var fn2 = function() {
	console.log('卧薪尝胆,厚积薄发,锐意进取');
}
console.log(fn2); //结果为function fn2()
fn2(); //结果为卧薪尝胆,厚积薄发,锐意进取

</script>
</head>
<body style="background-color: #CCE8CF;">
	<h3 style="color: #cd1636;">JavaScript中变量提升</h3>
	<a href="https://blog.csdn.net/czh500/article/details/103467058" target="_blank">
	详解javascript中的变量提升和函数提升https://blog.csdn.net/czh500/article/details/103467058
	</a>
	<br/>
	<a href="https://www.runoob.com/js/js-hoisting.html" target="_blank">
	JavaScript变量提升参考网页https://www.runoob.com/js/js-hoisting.html
	</a>
	<br/>
	<a href="https://blog.csdn.net/czh500/article/details/103455845" target="_blank">
	javascript变量提升详解参考网页https://blog.csdn.net/czh500/article/details/103455845
	</a>
	<br/>
	<a href="https://www.runoob.com/js/js-strict.html" target="_blank">
	JavaScript严格模式(use strict)参考网页https://www.runoob.com/js/js-strict.html
	</a>
</body>
</html>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值