JavaScript Object.freeze ()

JavaScript Object.freeze () yöntemi bir nesneyi dondurur.

Dondurulmuş bir nesne artık değiştirilemez. Bir nesneyi dondurmak şunları engeller:

  • Nesneye eklenen yeni özellikler.
  • Nesneden kaldırılacak mevcut özellikler.
  • Mevcut özelliklerin numaralandırılabilirliğini, yapılandırılabilirliğini veya yazılabilirliğini değiştirme.
  • Mevcut nesne özelliklerinin ve prototipin değerlerini değiştirme.

freeze()Yöntemin sözdizimi şöyledir:

 Object.freeze(obj)

freeze()Yöntem, statik bir yöntemle olmak kullanılarak denir Objectsınıf adını.

freeze () Parametreler

freeze()Yöntem alır:

  • obj - Dondurulacak nesne.

Freeze'den dönüş değeri ()

  • İşleve iletilen nesne.

Notlar :

  • Dondurulmuş nesnelerin özellikler kümesine ekleme veya bunlardan kaldırma girişimleri ya sessizce başarısız olur ya da fırlatır TypeError(çoğunlukla katı moddayken).
  • Mühürlenen nesnelerin Object.seal()mevcut özellikleri değiştirilebilirken, mevcut özellikleri değiştirilemez Object.freeze()hale getirilebilir.

Örnek: freeze () kullanma

 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 ))

Çıktı

 true true bar undefined

Not : Object.freeze(obj)yalnızca öğesinin yakın özellikleri için geçerlidir obj. Bu özelliklerin değeri nesnelerin kendisiyse, bu nesneler donmaz ve özellik ekleme, kaldırma veya değer yeniden atama işlemlerinin hedefi olabilir.

Önerilen Kaynaklar: JavaScript Object seal ()

Ilginç makaleler...