Javascript 功能提升中的奇怪行为

Javascript 功能提升中的奇怪行为,javascript,scratchpad,Javascript,Scratchpad,我写了下面的脚本,并在scratch pad中执行 baz(); var baz = function(){ console.log("Hello World"); } 当我尝试执行上面的脚本时,我遇到了下面的异常。我知道,这个表达式是因为,提升对函数表达式无效 /* Exception: TypeError: baz is not a function @Scratchpad/1:1:1 */ 现在,我将函数名“baz”替换为“say_hello”,并重新运行该应用程序,它工作正常,

我写了下面的脚本,并在scratch pad中执行

baz();

var baz = function(){
  console.log("Hello World");
}
当我尝试执行上面的脚本时,我遇到了下面的异常。我知道,这个表达式是因为,提升对函数表达式无效

/*
Exception: TypeError: baz is not a function
@Scratchpad/1:1:1
*/
现在,我将函数名“baz”替换为“say_hello”,并重新运行该应用程序,它工作正常,没有例外。这种行为有什么原因吗

say_hello();
var say_hello=函数(){
log(“你好世界”);
}
say_hello();
函数say_hello(){
log(“你好世界”);

}
未捕获类型错误:say_hello不是一个函数
感谢您的回复,那么firefox便笺簿中可能有问题