当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Javascript Object.isFrozen( )用法及代码示例


JavaScript中的对象和对象构造函数?
在面向对象的编程中,定义对象的方式在许多情况下是受限制的。要创建可以多次使用的对象“type”,而不必每次都重新定义对象以满足每个特定实例的需要,标准方法是使用对象构造函数。
对象构造函数只是常规的JavaScript函数,通常具有同样强大的函数,即定义参数,调用其他函数等。对象构造函数为对象而非对象本身创建蓝图。
让我们以real-world项目“dog”为例。狗的属性可以是其颜色或名称,方法可以是“bark”。这里要注意的重要一点是,每只狗的名字或树皮类型都不同。为了创建满足这种灵活性需求的对象类型,我们使用对象构造函数。因此,狗将成为对象构造函数,并使用“this”关键字在其内部声明其属性(颜色,名称)和方法(树皮噪声)。然后使用new关键字实例化使用对象构造函数定义的对象。
这有助于轻松定义dog(一个对象构造函数)的多个实例,每个实例都有自己的名称-这就是对象构造函数为自定义对象带来的灵活性。

Object.isFrozen()方法
在Object构造函数方法中,有一个Object.isFrozen()方法,该方法用于确定对象是否冻结。

如果满足以下所有条件,则冻结对象:


  1. 如果不能扩展。
  2. 如果其所有属性都是不可配置的。
  3. 如果其所有数据属性均为不可写。

Object.isFrozen()将对象作为必须检查的参数,并返回一个布尔值,表示对象是否冻结。

应用范围:

  • Object.isfrozen()用于检查对象是否冻结。

用法:

Object.isFrozen(obj)

使用的参数:

  1. 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:

<script> 
  
<!-- 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)); 
  
</script>

输出:

false

代码2:

<script> 
  
<!-- 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)); 
  
</script>

输出:

true

异常:

  • 如果传递的参数不是对象,则会导致TypeError。



注:本文由纯净天空筛选整理自Shubrodeep Banerjee大神的英文原创作品 Object.isFrozen() In JavaScript。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。