我經常使用var options = options || {}
作爲默認爲空對象的方式。它通常用於初始化選項對象,以防未在函數調用的參數中傳遞該對象。var options = options ||之間的區別{}`和`選項|| (options = {})`
事情是我已經在幾個地方看過(博客文章,源代碼),options || (options = {})
更好地表達了開發者的意圖。有人可以詳細說明嗎?我沒有看到兩者之間的功能差異,所以我必須在這裏丟失一些東西。
---編輯
我在幾個地方Backbone.js的源代碼所看到的,像https://github.com/documentcloud/backbone/blob/0.9.2/backbone.js#L273
我想我也看到了在jQuery的源代碼了。並且在多個Js寫作風格指南中蓬勃發展。
---編輯2代碼例如:
var func = function(param, options) {
// How I do it
var options = options || {};
// How I should do it in the "same" way
options = options || {};
// The "other" way
options || (options = {});
}
你能鏈接到這些職位的一些? –
這是主觀的恕我直言,我個人喜歡你喜歡的那個,他們真的做同樣的事情。 – 2012-11-19 12:14:15
我通常會做'選項=選項|| {}',而不用'var'重新聲明變量。可惜在Javascript中沒有'|| =' – Kos