提升内部函数 - 内部函数和变量具有相同的名称 - 输出?

2023-12-09

function y() {
  var x = 'hi';

  function x() {
    return 'bye';
  };
  return x(); // x is not a function
  return x; // 'hi'
}

console.log(y())

无法执行此函数。有人可以解释一下吗?


函数和变量声明被提升。函数声明还提升了值的赋值。

So both function x and var x创建一个名为x在当前范围内。function x还为该变量分配一个函数。

作业与=没有被吊起。

So x = 'hi'用字符串覆盖该函数。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

提升内部函数 - 内部函数和变量具有相同的名称 - 输出? 的相关文章

随机推荐