CoffeeScript攻略2.2:建立一個不存在的物件字面值

CoffeeScript Cookbook發表於2011-11-16

問題

你想初始化一個物件字面值,但如果這個物件已經存在,你不想重寫它。

方案

使用存在判斷運算子(existential operator)。

window.MY_NAMESPACE ?= {}

討論

這行程式碼與下面的JavaScript程式碼等價:

window.MY_NAMESPACE = window.MY_NAMESPACE || {};

這是JavaScript中一個常用的技巧,即使用物件字面值來定義名稱空間。這樣先判斷是否存在同名的名稱空間然後再建立,可以避免重寫已經存在的名稱空間。


enter image description here

相關文章