我從庫中獲得了一段代碼,其中包含以下內容。 options = options || {}
的目的是什麼?Javascript確保對象不是由空或者對象定義的對象
var x = function(options) {
options = options || {};
if ('select_message' in options)
options.selectMessage = options.select_message;
// something else
}
乍一看,由於使用布爾運算符,選項似乎變爲真或假。但這並不合理。我的假設是它確保「選項」不會被定義,即類似於下面的內容。
if (typeof options != 'undefined')
options = {};
這應該有所幫助:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Logical_Operators – Ian
你問「目的是什麼......?」,但主題行你的問題已經回答了。如果它的操作數都不是「true」或「false」,'||'操作符不會返回true或false。 – nnnnnn
謝謝@Ian。我以前不知道,所以這只是我的假設。 –