JavaScript 对象(Objects) 方法

Object.freeze()方法用于冻结一个对象,阻止向其添加新属性。此方法可防止修改现有属性、属性和值。

语法:

Object.freeze(obj)

    参数

    Obj:要冻结的对象。

    返回值

    此方法返回传递给函数的对象。

    浏览器支持

    chrome45.0
    edge12.0
    firefox32.0
    opera没有

    示例

    下面介绍一些例子帮助理解该方法的使用。

    示例1

    <script>const object1 = {
      property122
    };
    const object2 = Object.freeze(object1);
    object2.property1 = 33;
    console.log(object2.property1);
    </script> 
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    输出:

    22

    示例2

    <script>const obj1 = { property1'freeze'};
    const obj2 = Object.freeze(obj1);
    obj2.property1 = 'new_data';
    console.log(obj2.property1);
    </script>
    • 1
    • 2
    • 3
    • 4

    输出:

    " freeze "

    示例3

    <script>
    var obj = { propfunction() {}, name'charry' };
    console.log(obj);
    obj.name = 'karri';
    delete obj.prop;
    console.log(obj);
    var o = Object.freeze(obj);
    obj.name = 'chris';
    console.log(obj);
    </script> 
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    输出:

    [object Object] {
    name: "charry",
    prop: function() {}
    }
    [object Object] {
    name: "karri"
    }
    [object Object] {
    name: "karri"
    }