當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


JavaScript Object isFrozen()用法及代碼示例


對象.isFrozen()方法:在Object構造方法中,有一個方法Object.isFrozen()用於判斷對象是否被凍結。
如果滿足以下所有條件,則對象將被凍結:

  • 如果是不可擴展的。
  • 如果它的所有屬性都是不可配置的。
  • 如果它的所有數據屬性都是不可寫的。

Object.isFrozen() 將對象作為必須檢查的參數,並返回一個表示對象是否被凍結的布爾值。

應用:Object.isfrozen()用於檢查對象是否被凍結。

用法:

Object.isFrozen(obj)

參數:

  • obj :它是必須檢查的對象。

返回值:Object.isFrozen() 返回一個布爾值,表示對象是否被凍結。

下麵提供了上述函數的示例。

例子:

Input : const object = {
        property: 'hi geeksforgeeks'
        };
        console.log(Object.isFrozen(object));
Output : false

Input : const object = {
        property: 'hi geeksforgeeks'
        };
        Object.freeze(object);
        console.log(Object.isFrozen(object));
Output : true

下麵提供了上述函數的代碼。

代碼1:

Javascript


// creating an object constructor and assigning values to it 
const object = {
    property: 'hi geeksforgeeks'
};
// checking whether the object is frozen or not 
console.log(Object.isFrozen(object));

輸出:

false

代碼2:

Javascript


// creating an object constructor and assigning values to it 
const object = {
    property: 'hi geeksforgeeks'
};
// Using freeze() method to freeze the object 
Object.freeze(object);
// checking whether the object is frozen or not 
console.log(Object.isFrozen(object));

輸出:

true

JavaScript 中的對象和對象構造函數
在麵向對象編程中,定義對象的方式在許多情況下都是有限的。要創建一個可以多次使用的對象“type”,而不必每次都重新定義對象以滿足每個特定實例的需求,標準方法是使用對象構造函數。

對象構造函數隻是一個常規的 JavaScript 函數,通常同樣強大,即定義參數、調用其他函數等。對象構造函數為對象創建藍圖,而不是對象本身。

讓我們以real-world 項目“dog” 為例。狗的屬性可以是它的顏色或名稱,方法可以是“bark”。這裏需要注意的重要一點是,每隻狗都會有不同的名字,甚至吠叫類型。為了創建滿足這種靈活性需求的對象類型,我們使用對象構造函數。因此,狗將是一個對象構造函數,其屬性(顏色、名稱)和方法(吠聲)在其中使用“this”關鍵字聲明。然後使用 new 關鍵字實例化使用對象構造函數定義的對象。

這有助於輕鬆定義dog(對象構造函數)的多個實例,每個實例都有自己的名稱——這就是對象構造函數為自定義對象帶來的靈活性。

異常:如果傳遞的參數不是對象,則會導致TypeError。

支持的瀏覽器:

  • 穀歌瀏覽器 6 及以上版本
  • 邊 12 及以上
  • 火狐瀏覽器 4 及以上版本
  • 互聯網瀏覽器 9
  • Opera 12 及以上版本
  • Safari 5.1 及以上版本


相關用法


注:本文由純淨天空篩選整理自Shubrodeep Banerjee大神的英文原創作品 JavaScript Object isFrozen() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。