Javascript delete object property not working

后端 未结 5 1759
难免孤独
难免孤独 2021-01-01 13:31

I\'m running some project on MEAN.js and I\'ve got a following problem. I want to make some user\'s profile calculation and the save it to database. But there\'s a problem w

5条回答
  •  不知归路
    2021-01-01 14:14

    there are certain rules for delete operator in javascript

    1. if the property is an own non-configurable property in "strict mode" than it will return false.

    for example

    x = 42;         // creates the property x on the global object
    var y = 43;     // creates the property y on the global object, and marks it as non-configurable
    
    // x is a property of the global object and can be deleted
    delete x;       // returns true
    
    // y is not configurable, so it cannot be deleted                
    delete y;       // returns false 
    
    1. If the object inherits a property from a prototype, and doesn't have the property itself, the property can't be deleted by referencing the object. You can, however, delete it directly on the prototype.

    for example

    function Foo(){}
    Foo.prototype.bar = 42;
    var foo = new Foo();
    
    // returns true, but with no effect, 
    // since bar is an inherited property
    delete foo.bar;           
    
    // logs 42, property still inherited
    console.log(foo.bar);
    

    so, please cross check these point and for more information your can read this Link

提交回复
热议问题