== Why is this an issue? The `Object.hasOwn()` method was introduced in ES2022 as a replacement for the more verbose `Object.prototype.hasOwnProperty.call()`. These methods return `true` if the specified property of an object exists as its _own_ property. If the property is only available further down the prototype chain or does not exist at all - the methods return `false`. If you are still using the old method - replace it with a simpler and more concise alternative. You should also avoid calling the `obj.hasOwnProperty()` method directly, without using `Object.prototype` as a source. This can lead to a runtime error if `obj.prototype` is `null` and therefore `obj.hasOwnProperty` is undefined. The static method `Object.hasOwn()` does not depend on the `obj.prototype` and is therefore safe to use in such cases. [source,javascript] ---- Object.prototype.hasOwnProperty.call(obj, "propertyName"); // Noncompliant Object.hasOwnProperty.call(obj, "propertyName"); // Noncompliant ({}).hasOwnProperty.call(obj, "propertyName"); // Noncompliant ---- To fix the code replace `hasOwnProperty()` with `Object.hasOwn()` [source,javascript] ---- Object.hasOwn(obj, "propertyName"); ---- == Resources === Documentation * MDN web docs - https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwn[Object.hasOwn()] * MDN web docs - https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty[Object.prototype.hasOwnProperty()]