首页 > 试题广场 >

以下 Javascript 代码的运行结果是() let n

[单选题]
以下 Javascript 代码的运行结果是()
let name = 'outer'
function showName() {
  console.log(name)
  let name = 'inner'
}
name = 'updatedOuter'
showName()

  • outer
  • inner
  • updatedOuter
  • ReferenceError

ES6 中有明确的规定:如果区块中存在 let 和 const 命令,这个区块对这些命令声明的变量,从一开始就形成了封闭作用域。假如我们尝试在声明前去使用这类变量,就会报错。showName函数内,let name = 'inner'上面的区域就为暂时性死区。

发表于 2020-09-16 00:25:14 回复(0)

let同一个作用域不能重复定义同一个名称,所以报错

发表于 2020-02-13 18:37:15 回复(2)
let const 存在 暂时性死区
发表于 2020-03-15 15:00:46 回复(0)

let只初始化提升

发表于 2020-02-06 18:21:12 回复(0)
链接:https://www.nowcoder.com/questionTerminal/4df3d19c540e435bb9e4dce3f29f5d40
来源:牛客网
let name ='outer'
function showName() {
  let name ='inner'
  console.log(name)
}
name ='updatedOuter'
showName()
发表于 2020-09-13 15:03:12 回复(0)
<p>let 变量不存在变量提升</p>
发表于 2020-07-09 13:07:34 回复(0)
全局也是let关键字,我不够仔细还以为是var
发表于 2020-01-23 17:54:53 回复(0)