Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Usando hasOwnProperty() para Verificar Propriedades de Objetos | Técnicas Avançadas de Manipulação de Objetos
Estruturas de Dados em JavaScript

bookUsando hasOwnProperty() para Verificar Propriedades de Objetos

Ao iterar pelas propriedades de um objeto usando o laço for...in, é importante distinguir entre as propriedades próprias do objeto e as propriedades herdadas de seu protótipo.

Em JavaScript, algumas propriedades podem aparecer durante a iteração mesmo que não tenham sido definidas diretamente no objeto. Isso ocorre porque objetos podem herdar propriedades de outros objetos.

O método hasOwnProperty() nos ajuda a garantir que estamos trabalhando apenas com as propriedades que pertencem diretamente ao objeto.

Compreendendo hasOwnProperty()

O método hasOwnProperty() é um método nativo do JavaScript que verifica se uma propriedade existe diretamente em um objeto. Ele retorna um valor Booleano (true ou false).

Sintaxe

object.hasOwnProperty(property)
  • object: o objeto que você deseja verificar;
  • property: o nome da propriedade a ser procurada.

Por que hasOwnProperty() é útil

Considere o exemplo a seguir:

12345678910
const baseExercise = { category: "Strength", }; const exercise = Object.create(baseExercise); exercise.name = "Deadlift"; for (let key in exercise) { console.log(key); }
copy

Mesmo que category não tenha sido definida diretamente em exercise, ela aparece no loop. Por isso, é necessário uma verificação adicional.

Usando hasOwnProperty() com for...in

Ao combinar for...in com hasOwnProperty(), é possível iterar com segurança apenas sobre as propriedades próprias do objeto.

12345678910111213
const exercise = { name: "Deadlift", primaryMusclesWorked: "Erector spinae", equipment: "Barbell", exerciseType: "Strength", difficulty: "Intermediate", }; for (let key in exercise) { if (exercise.hasOwnProperty(key)) { console.log(`Property: ${key}, Value: ${exercise[key]}`); } }
copy

Essa verificação garante que propriedades herdadas sejam ignoradas, tornando o código mais previsível e seguro.

1. Qual é o principal objetivo do método hasOwnProperty()?

2. Que tipo de valor o método hasOwnProperty() retorna?

3. Ao usar hasOwnProperty() com o loop for...in, por que é importante verificar as propriedades próprias?

4. No código abaixo, o que será exibido ao iterar pelas propriedades do objeto video?

question mark

Qual é o principal objetivo do método hasOwnProperty()?

Select the correct answer

question mark

Que tipo de valor o método hasOwnProperty() retorna?

Select the correct answer

question mark

Ao usar hasOwnProperty() com o loop for...in, por que é importante verificar as propriedades próprias?

Select the correct answer

question mark

No código abaixo, o que será exibido ao iterar pelas propriedades do objeto video?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 3

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

bookUsando hasOwnProperty() para Verificar Propriedades de Objetos

Deslize para mostrar o menu

Ao iterar pelas propriedades de um objeto usando o laço for...in, é importante distinguir entre as propriedades próprias do objeto e as propriedades herdadas de seu protótipo.

Em JavaScript, algumas propriedades podem aparecer durante a iteração mesmo que não tenham sido definidas diretamente no objeto. Isso ocorre porque objetos podem herdar propriedades de outros objetos.

O método hasOwnProperty() nos ajuda a garantir que estamos trabalhando apenas com as propriedades que pertencem diretamente ao objeto.

Compreendendo hasOwnProperty()

O método hasOwnProperty() é um método nativo do JavaScript que verifica se uma propriedade existe diretamente em um objeto. Ele retorna um valor Booleano (true ou false).

Sintaxe

object.hasOwnProperty(property)
  • object: o objeto que você deseja verificar;
  • property: o nome da propriedade a ser procurada.

Por que hasOwnProperty() é útil

Considere o exemplo a seguir:

12345678910
const baseExercise = { category: "Strength", }; const exercise = Object.create(baseExercise); exercise.name = "Deadlift"; for (let key in exercise) { console.log(key); }
copy

Mesmo que category não tenha sido definida diretamente em exercise, ela aparece no loop. Por isso, é necessário uma verificação adicional.

Usando hasOwnProperty() com for...in

Ao combinar for...in com hasOwnProperty(), é possível iterar com segurança apenas sobre as propriedades próprias do objeto.

12345678910111213
const exercise = { name: "Deadlift", primaryMusclesWorked: "Erector spinae", equipment: "Barbell", exerciseType: "Strength", difficulty: "Intermediate", }; for (let key in exercise) { if (exercise.hasOwnProperty(key)) { console.log(`Property: ${key}, Value: ${exercise[key]}`); } }
copy

Essa verificação garante que propriedades herdadas sejam ignoradas, tornando o código mais previsível e seguro.

1. Qual é o principal objetivo do método hasOwnProperty()?

2. Que tipo de valor o método hasOwnProperty() retorna?

3. Ao usar hasOwnProperty() com o loop for...in, por que é importante verificar as propriedades próprias?

4. No código abaixo, o que será exibido ao iterar pelas propriedades do objeto video?

question mark

Qual é o principal objetivo do método hasOwnProperty()?

Select the correct answer

question mark

Que tipo de valor o método hasOwnProperty() retorna?

Select the correct answer

question mark

Ao usar hasOwnProperty() com o loop for...in, por que é importante verificar as propriedades próprias?

Select the correct answer

question mark

No código abaixo, o que será exibido ao iterar pelas propriedades do objeto video?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 3
some-alt