JavaScript: hasOwn() – neue Möglichkeit, zu überprüfen, ob ein Objekt eine Eigenschaft hat

Jan 26 2023
.
  1. inOperator
  2. hasOwnProperty()Funktion
  3. const developer = { 
      age: 32
    };
    
    'age' in developer; // true
    
    developer.hasOwnProperty('age'); // true
    

'constructor' in developer; // true

developer.hasOwnProperty('constructor'); // false

  1. hasOwnPropertykann überschrieben werden:
  2. var developer = {
      age: 32, 
      hasOwnProperty: "frontend"
    };
    
    developer.hasOwnProperty('age') // throws a TypeError
    

var developer = Object.create(null);
someObject.hasOwnProperty('age'); // throws a TypeError

/* not recommended */
const hasBarProperty = developer.hasOwnProperty("age");

/* recommended */
const hasBarProperty = Object.prototype.hasOwnProperty.call(developer, "age");

const developer = { 
  age: 32
};

Object.hasOwn(developer, 'age') // true

Object.hasOwn(developer, 'not-existing-property'); // false

Object.hasOwn(developer, 'constructor'); // false

developer.hasOwnProperty = () => false;

developer.hasOwnProperty('age'); // false

Object.hasOwn(developer, 'age') // true

Object.prototype.hasOwnProperty.call(developer, 'age'); // true

Object.hasOwn(developer, 'age'); // true