Não consegui entender a diferença entre essas duas expressões. Obviamente, o resultado é o mesmo. Mas o que realmente está sendo feito em cada caso?
Não consegui entender a diferença entre essas duas expressões. Obviamente, o resultado é o mesmo. Mas o que realmente está sendo feito em cada caso?
Oi, Renan
Propriedades de objetos em JavaScript podem também ser acessadas ou alteradas usando-se notação de colchetes
Veja mais em Trabalhando com objetos
Olá, Renan!
Ótima pergunta! A diferença entre peca.bracos
e peca["bracos"]
é a forma como você acessa uma propriedade de um objeto em JavaScript.
Quando você usa a notação de ponto, como em peca.bracos
, você está acessando diretamente a propriedade bracos
do objeto peca
. Essa forma é mais comumente utilizada quando você sabe o nome exato da propriedade que deseja acessar.
Por outro lado, quando você usa a notação de colchetes, como em peca["bracos"]
, você está acessando a propriedade bracos
do objeto peca
usando uma string como chave. Essa forma é útil quando você precisa acessar uma propriedade cujo nome é dinâmico, ou seja, quando você só conhece o nome da propriedade em tempo de execução.
Por exemplo, suponha que você tenha um objeto peca
com as propriedades bracos
, pernas
e cabeca
. Se você quiser acessar a propriedade bracos
, você pode usar tanto peca.bracos
quanto peca["bracos"]
e obterá o mesmo resultado. No entanto, se você tiver uma variável chamada propriedade
que contém a string "bracos"
, você só poderá usar a notação de colchetes para acessar a propriedade dinamicamente, como peca[propriedade]
.
Espero ter esclarecido sua dúvida! Se tiver mais alguma pergunta, é só me dizer. Espero ter ajudado e bons estudos!
Ah, entendi. Fazendo uma analogia seria o seguinte:
caixa.chaveDeFenda
- me passe a chave de fenda que está dentro dessa caixa;caixa["chaveDeFenda"]
- veja se tem uma chave de fenda nessa caixa e me passe.É isso?