我在這裏讀了一些問題,這一點:默認參數
這是一個好
function(a, b) { a = (typeof a === 'undefined')? 'default_val' : a; b = (typeof b === 'undefined')? 'default_val' : b; }
這是有點麻煩(適用於任何東西,但布爾值)
function(a, b) { a = a || 'default_val'; b = b || 'default_val'; }
如果您通過false它會打破邏輯。所以這應該被標記爲一個壞習慣
有幾個問題,但我從來沒有見過這個答案(沒有人直接回答這個問題):這是(最後一種方法)好嗎?問題與它)?
function(a = 'default_val', b = 'default_val') { // your code }
我已經測試了這種方法3TH但找不到任何問題。我想要最後的方法。它更清潔,看起來更像其他語言的結構。
感謝
#3在ES5中的語法無效。 –
存在問題:您的第三條語句是無效聲明,您的函數從未定義過。 – Passerby
函數(a ='default_val',b ='default_val')是語法錯誤 –