代碼如下:(function(){if(true){inner();functioninner(){alert(1);}}else{}})()在IE8-11、chrome、safari中均彈出了alert(1);但是在firefox31.0中提示了innerisnotdefined;但是改成下面這樣就可以了:(function(){if(true){functioninner(){alert(1);}inner();}else{}})()是SpiderMonkey的BUG嗎?再補(bǔ)充一點:(function(){if(true){inner();}else{}functioninner(){alert(1);}})()這樣的話在所有瀏覽器下都是正常的,alert(1)了
JS中在if else 中定義 function 的問題
慕斯王
2019-04-13 08:46:39