Code Fix

上級 › Object.freeze()は1階層しか凍結しない(浅い凍結) › パターン4

Object.freeze()は1階層しか凍結しない(浅い凍結)

Object.freeze()はオブジェクト自身の直下のプロパティの再代入・追加・削除だけを禁止します。

 1  function isDeeplyFrozen(obj) {
 2    return Object.isFrozen(obj) && Object.isFrozen(____________);
                                                           ^
 3  }
 4  const device = Object.freeze({ name: "phone", specs: { ram: 8 } });
 5  console.log(isDeeplyFrozen(device));
出力: true期待: false (エラーにはなりません)

空欄を埋めて実行を通す

広告
広告スロット(未設定)

Object.freeze()は1階層しか凍結しない(浅い凍結)

プロパティの値がオブジェクトである場合、そのネストしたオブジェクトは凍結されず、自由に変更できてしまいます。

このエラーの解説と類題をまとめて見る →

広告
広告スロット(未設定)