我經常依賴這樣一個事實,即在Javascript中條件運算符不會返回真或假,而是其中一個參數。依賴布爾運算符返回它們的一個操作數是否是一個好習慣?
例如:
function(e){
this.someotherfunction.apply(this, e.config || []);
}
到目前爲止,我還沒有遇到任何問題,當我試圖找出道格拉斯克羅克福德(讀的JSLint)不得不說的是,我還沒有發現任何問題。
使用這種語法有沒有什麼危險?
我經常依賴這樣一個事實,即在Javascript中條件運算符不會返回真或假,而是其中一個參數。依賴布爾運算符返回它們的一個操作數是否是一個好習慣?
例如:
function(e){
this.someotherfunction.apply(this, e.config || []);
}
到目前爲止,我還沒有遇到任何問題,當我試圖找出道格拉斯克羅克福德(讀的JSLint)不得不說的是,我還沒有發現任何問題。
使用這種語法有沒有什麼危險?
使用這種語法有沒有什麼危險?
號
(只要你和所有其他開發人員知道這個代碼做什麼...)
這是完全記錄和工作在many dynamic languages的方式。使用這種結構是安全的,並且得到了廣泛的認可。
該方法是慣用的JavaScript。
使用這種語法有沒有什麼危險?
你必須小心瞭解輸入是什麼。例如如果某件事情需要一個數字,那麼你必須考慮0
是一個錯誤的值。
只有你可能面臨的問題是一個憤怒的開發者說他們很難閱讀它,並會要求它被重寫爲。
foo : function (e) {
var config = e.config || [];
this.someotherfunction.apply(this,config);
}
是的,我遇到了那些憤怒的開發者。
@Quentin,什麼標題保存! – gdoron