Deep freeze object

JavaScript, Object, Recursion · Oct 19, 2020

Deep freezes an object.

const deepFreeze = obj => {
  Object.keys(obj).forEach(prop => {
    if (typeof obj[prop] === 'object') deepFreeze(obj[prop]);
  });
  return Object.freeze(obj);
};
'use strict';

const val = deepFreeze([1, [2, 3]]);

val[0] = 3; // not allowed
val[1][0] = 4; // not allowed as well

More like this

  • Compact object

    Deeply removes all falsy values from an object or array.

    JavaScript, Object · Nov 27, 2020

  • Deep map object keys

    Deep maps an object's keys.

    JavaScript, Object · Sep 15, 2020

  • Check object equality

    Performs a deep comparison between two values to determine if they are equivalent.

    JavaScript, Object · Oct 13, 2021