Sales

Object.freeze() JavaScript'te bir nesneyi donmak (değişmez hale getirmek) için kullanılır. Bu metot çağrıldığında, belirtilen nesne üzerinde yapılan değişiklikler engellenir; yeni özellikler eklenemez, mevcut özellikler silinemez ve var olan özelliklerin değerleri değiştirilemez. Aşağıda Object.freeze() kullanımına dair bir örnek verilmiştir: ```javascript const nesne = { isim: 'Ahmet', yas: 30 }; // Nesneyi dondur Object.freeze(nesne); // Değişiklik yapmayı deneyelim nesne.isim = 'Mehmet'; // Hiçbir şey olmayacak nesne.yas = 35; // Hiçbir şey olmayacak delete nesne.isim; // Hiçbir şey olmayacak nesne.soyisim = 'Yılmaz'; // Hiçbir şey olmayacak console.log(nesne); // Çıktı: { isim: 'Ahmet', yas: 30 } ``` Bu örnekte, `nesne` üzerinde yapılan tüm değişiklikler etkisiz hale gelmiştir. Object.freeze() ile dondurulan nesne, üzerinde değişiklik yapılamayacağı için güvenli bir şekilde korunmuş olur.

Erkan Sivas

Erkan Sivas

PlusClouds Yazarı

Hoe wordt Object.freeze() gebruikt in JavaScript?

In JavaScript zijn objecten en arrays veranderlijk. Dit betekent dat we op elk gewenst moment een object (of array) kunnen wijzigen. Maar als we om welke reden dan ook niet willen dat dit gebeurt en we het object onveranderlijk willen maken.


Dit kunnen we doen met de freeze() methode.


Een object dat je met de freeze() methode bevriest, kan niet meer worden gewijzigd; een object bevriezen met freeze voorkomt dat er nieuwe eigenschappen aan worden toegevoegd, bestaande eigenschappen worden verwijderd, de enumerabiliteit van bestaande eigenschappen, de configureerbaarheid of de schrijfbaarheid verandert, en verhindert dat de waarden van bestaande eigenschappen worden gewijzigd. Bovendien voorkomt het bevriezen van een object dat de prototype ervan wordt gewijzigd.


Hier is een voorbeeldcode over het gebruik van deze methode;
const obj = {
    name: "Jack"
};

Object.freeze(obj);

obj.name = "Kelly";
// Werpt een fout in strikte modus

console.log(obj.name);
// verwachte output: "Jack"