JavaScript Object.freeze ()

Metode JavaScript Object.freeze () membekukan objek.

Objek yang dibekukan tidak dapat lagi diubah. Membekukan suatu objek mencegah:

  • Properti baru sedang ditambahkan ke objek.
  • Properti yang ada akan dihapus dari objek.
  • Mengubah enumerabilitas, konfigurasi, atau kemampuan menulis properti yang ada.
  • Mengubah nilai properti objek dan prototipe yang ada.

Sintaks dari freeze()metode ini adalah:

 Object.freeze(obj)

The freeze()metode, menjadi metode statis, disebut menggunakan Objectnama kelas.

freeze () Parameter

The freeze()Metode mengambil di:

  • obj - Objek yang akan dibekukan.

Kembalikan nilai dari freeze ()

  • Objek yang diteruskan ke fungsi tersebut.

Catatan :

  • Setiap upaya untuk menambah atau menghapus dari kumpulan properti objek yang dibekukan akan gagal secara diam-diam atau terlempar TypeError(kebanyakan saat dalam mode ketat).
  • Objek yang disegel Object.seal()dapat memiliki properti yang ada berubah sementara Object.freeze()membuat properti yang ada tidak dapat diubah.

Contoh: Menggunakan freeze ()

 let obj = ( prop: function () (), foo: "bar", ); let o = Object.freeze(obj); console.log(o == obj); // True -> Returns the same object console.log(Object.isFrozen(obj)); // true // changes will fail silently obj.foo = "bar1"; console.log(obj.foo); // bar // does not add silently obj.new_foo = "bar"; console.log(obj.new_foo); // undefined // Following will also throw error // Object.setPrototypeOf(obj, ( x: 20 ))

Keluaran

 true true bar undefined

Catatan : Object.freeze(obj)hanya berlaku untuk properti langsung dari obj. Jika nilai properti tersebut adalah objek itu sendiri, objek tersebut tidak dibekukan dan mungkin menjadi target operasi penambahan, penghapusan, atau penugasan nilai properti.

Bacaan yang Direkomendasikan: JavaScript Object seal ()

Artikel yang menarik...