freezeDeep.js 324 B

12345678910111213
  1. var freeze = require('./freeze');
  2. var keys = require('./keys');
  3. var isObj = require('./isObj');
  4. exports = function(obj) {
  5. freeze(obj);
  6. keys(obj).forEach(function(prop) {
  7. var val = obj[prop];
  8. if (isObj(val) && !Object.isFrozen(val)) exports(val);
  9. });
  10. return obj;
  11. };
  12. module.exports = exports;