1. 程式人生 > >分享一個徹底凍結對象的函數——來自阮一峰老師的《ECMAScript 6 入門》

分享一個徹底凍結對象的函數——來自阮一峰老師的《ECMAScript 6 入門》

分享 入門 pre 函數 凍結 徹底 nbsp 枚舉 clas

var constantize = (obj) => {
  Object.freeze(obj);
  Object.keys(obj).forEach( (key, i) => {
    if ( typeof obj[key] === ‘object‘ ) {
      constantize( obj[key] );
    }
  });
};

凍結對象的用處:

凍結對象是指那些不能添加新的屬性,不能修改已有屬性的值,不能刪除已有屬性,以及不能修改已有屬性的可枚舉性、可配置性、可寫性的對象。

也就是說,這個對象永遠是不可變的。

分享一個徹底凍結對象的函數——來自阮一峰老師的《ECMAScript 6 入門》