if(true) {
        function someFunc(){
          return 1;
        };
      } else {
        function someFunc(){
          return 2;
        };
      }
      var notSomeFunc = function someFunc(){
        return 3;
      };
      alert(someFunc());

FF输出1,表现为存在“块作用域”。

IE6-IE8输出3,这是它处理命名函数表达式时出现bug,创建两个截然不同的函数对象。

正确的输出应该为2。

相关链接:

相关文章:

  • 2022-12-23
  • 2021-07-26
  • 2022-02-25
  • 2021-05-11
  • 2022-12-23
  • 2022-01-16
  • 2021-12-11
  • 2021-10-31
猜你喜欢
  • 2022-02-19
  • 2022-01-27
  • 2022-12-23
  • 2022-12-23
  • 2021-09-04
  • 2021-12-03
相关资源
相似解决方案