鍍金池/ 問答/HTML/ ES6 函數參數的默認值 疑惑

ES6 函數參數的默認值 疑惑

clipboard.png

為什么在外面使用var就會報錯?在里面就不會報錯?

function fn(x=8){
  var x = 89;
  console.log(x);//不報錯
}
fn();
let y = 7;
var y = 8;//報錯
回答
編輯回答
愛是癌

let/const 禁止變量提升

2017年3月9日 16:30
編輯回答
真難過

函數的參數相當于var 出來的變量,var重復定義不會報錯

2017年9月24日 16:42
編輯回答
終相守

因為在外面
你先用let聲明了y
你在用var聲明y就會報錯

2017年2月24日 02:50