Object. hasOwn()
Sprawdza, czy obiekt ma własną właściwość o podanej nazwie.
- Zwraca
truealbofalse.- Zmienia oryginał
- Nie
Przykład
#const profile = { name: 'Ola', bio: undefined }
console.log(Object.hasOwn(profile, 'bio'))
console.log(Object.hasOwn(profile, 'toString'))
console.log('toString' in profile)Definicja i zastosowanie
#Metoda Object.hasOwn(obj, klucz) zwraca true, jeśli obiekt ma właściwość o tej nazwie bezpośrednio, a nie odziedziczoną z prototypu. To nowocześniejszy i bezpieczniejszy odpowiednik obj.hasOwnProperty(klucz).
Różni się od operatora in, który sprawdza też właściwości odziedziczone. Na przykład "toString" in {} zwraca true, a Object.hasOwn({}, "toString") zwraca false.
Działa także na obiektach bez prototypu (utworzonych przez Object.create(null)), na których metoda hasOwnProperty w ogóle nie istnieje.
Składnia
#Object.hasOwn(obj, prop)Parametry
#obj
obiekt
Sprawdzany obiekt.prop
napis lub symbol
Nazwa właściwości.
Obsługa przeglądarek
#Szeroko dostępne
Działa we wszystkich nowoczesnych przeglądarkach, także na telefonach. Możesz używać bez obaw.
- Chrome
- Edge
- Firefox
- Safari
Dobre praktyki
#- Sprawdzanie przez
if (obj.pole)nie odróżni braku pola od wartości0,""czyundefined.Object.hasOwn()to robi. - W nowym kodzie zastępuj
hasOwnPropertymetodąObject.hasOwn().
Powiązane hasła
#Widzisz błąd albo brakuje przykładu? Napisz do nas.