JavaScript 編程範式:默認空值

// 這種方式是錯誤的!!!因爲是引用,所以賦值只是同一個
	// 容易引起隱藏bug!
	// 不要定義靜態變量賦初始值,否則容易出bug
	// const EMPTY_ARRAY = [];
	// const EMPTY_STRING = '';
/**
	 * 正確的方式:是給每一個變量一個新對象!
	 * 默認空值
	 */
	var EMPTY_VALUES = {};
	//爲了去重引用,返回每一個都是新對象
	EMPTY_VALUES = Object.defineProperties(EMPTY_VALUES, {
		EMPTY_OBJECT: {
			get: function () {
				return {}
			}
		},
		EMPTY_ARRAY: {
			get: function () {
				return [];
			}
		},
		EMPTY_STRING: {
			get: function () {
				return '';
			}
		}

	});
//每次都會返回一個新的數組[],可以重複使用,不會造成衝突.
var tmp = EMPTY_VALUES.EMPTY_ARRAY;

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章