写出以下代码执行结果,并简单解释
var item1 = '123'
function showItem1() {
item1 = '456'
console.log(item1)
}
showItem1()
function showItem1() {
item1 = 789
console.log(item1)
}
showItem1()
var item2 = 'a'
function showItem2() {
console.log(item2)
var item2 = 'b'
console.log(item2)
}
showItem2()
let item3 = 'c'
{
console.log(item3)
let item3 = 10
}
答:控制台打印
789 //函数声明提升 :函数覆盖
789 //函数声明提升 :函数覆盖
undefined //var声明 但未赋值
b //var声明变量提升
报错 //let声明变量不提升,所以item3不存在