Code Fix

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

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

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

 1  function isDeeplyFrozen(obj) {
 2    return Object.isFrozen(obj) && Object.isFrozen(___________);
                                                          ^
 3  }
 4  const book = Object.freeze({ title: "JS", author: { name: "Al" } });
 5  console.log(isDeeplyFrozen(book));
出力: true期待: false (エラーにはなりません)

空欄を埋めて実行を通す

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

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

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

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

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