Escrevi um programa para te contar
detalhes sobre Winston
mas não muitos, pois Winston gosta de
manter um pouco de mistério.
Esse é apenas o jeito do Winston.
Vamos ver como eu fiz esse programa.
Criei algumas variáveis no começo para
guardar algumas informações sobre ele.
A primeira variável contém
um número: a sua idade.
A segunda variável contém uma
cadeia de caracteres: seus olhos.
A terceira contém
um vetor de cadeias de caracteres que
são coisas que ele gosta de fazer.
E as últimas duas variáveis contêm cadeias
de caracteres descrevendo onde ele nasceu.
Aqui embaixo, escrevi cada uma usando o
comando text e usando o nome da variável.
E, é claro, para o vetor, eu tenho que
acessar cada elemento do vetor
usando notação com chaves.
Agora, todas essas cinco variáveis contêm
informações sobre a mesma coisa: Winston.
Mas as variáveis não sabem
que elas são sobre a mesma coisa.
Em Javascript, quando você quer guardar
múltiplas informações que são relacionadas
temos um jeito melhor de guardá-las
que é bem legal e é chamado de objeto.
Isso significa que ao invés de cinco
variáveis, podemos ter
uma única variável que guarda toda
essa informação, o que é bem legal.
Vamos testar com as informações do Winston
Primeiro, vamos declarar a variável
e chamá-la de Winston.
E então, colocamos chaves - chaves,
não colchetes - e um ponto e vírgula.
Criamos um objeto mas ele não tem
absolutamente nenhuma informação dentro.
Para adicionar um pouco de
informação, temos que criar propriedades.
E cada propriedade é uma chave e um valor.
Por exemplo, idade seria "idade: 19"
E então para os olhos, vamos adicionar
uma vírgula e então "olhos: pretos".
Agora, o Winston tem duas
propriedades dentro do objeto.
Para gostos, podemos colocar gostos: e
então vou apenas copiar e colar lá de cima
Muito bem. Vamos dar uma olhada nisso.
Winston tem três propriedades.
Toda propriedade tem uma chave, que está à
esquerda, e um valor, que está à direita.
Para a chave, deve-se seguir as mesmas
regras que nomes de variáveis Javascript.
Sem espaços, começando com
uma letra, tudo isso.
Para o valor, pode ser qualquer tipo
de valor que já vimos até agora.
Poderia ser um número, uma
cadeia de caracteres, um vetor.
Poderia até mesmo ser booleano, poderíamos
adicionar eLegal: verdadeiro, é claro.
Na verdade, o valor poderia até
mesmo ser outro objeto.
Então, CidadeNatal e EstadoNatal são mesmo
pedaços de informação sobre a mesma coisa,
que é uma única localização.
E então acho que faria mais sentido
guardar isso como um objeto.
Vou adicionar outra chave, local de
nascimento, e para o valor vou colocar
sinal de chaves de novo e dentro vou ter
uma chave para cidade, "Mountain View",
e então estado, "California".
Você pode ver que pode realmente guardar
muita informação dentro de um objeto.
Agora que temos esse objeto que descreve
toda essa informação sobre Winston.
Vamos tentar deletar aquelas velhas
variáveis separadas que não sabiam
umas das outras.
Agora temos um erro.
E isso é porque nossos comandos text
estão referenciando as variáveis antigas.
Temos que atualizá-los para usar a
informação do objeto.
Vamos começar comentando os três últimos
para fazermos um de cada vez.
Aqui diz WinstonIdade agora.
O que precisamos fazer é substituir isso.
Então vamos digitar winston porque
é o nome da variável.
Repare que se deixarmos desse jeito, ele
diz [object Object]. Isso é muito grave.
É o Javascript nos dizendo que estamos
tentando transformar um objeto inteiro
em uma cadeia de caracteres. Mas nós só
queremos acessar sua idade dentro dele.
O que fazemos é colocar um ponto e então
escrevemos a chave apropriada que é idade.
Pronto! Nós temos a idade. Chamamos
isso de notação de ponto,
onde escrevemos o nome da variável do
objeto e um ponto e a chave do atributo.
Então podemos ir e fazer mais agora.
Vamos descomentar isso.
E então no lugar de winstonOlhos, vamos
colocar winston, ponto, olhos.
E para esse aqui, vai ser winston, ponto,
gostos, e então winston, ponto, gostos, um
E para esse último, é um pouco
mais complicado
porque é um objeto dentro de um objeto.
Vamos dizer winston, ponto,
localDeNascimento, mas se deixarmos assim
ainda é apenas o objeto inteiro então
temos que colocar ponto, cidade.
Vamos fazer isso aqui... winston, ponto,
localDeNascimento, ponto, estado.
Isso é realmente legal porque você pode
acessar dentro dos objetos que estão
dentro de outros objetos.
Bom. Excelente.
Como você pode ver, objetos são uma
excelente maneira de guardar um monte de
pedaços de informação relacionados sobre
um objeto e poder acessá-los depois.
E, quando você continuar aprendendo, vai
descobrir quanto objetos são legais!
Legendado por [Alberto Oliveira].
Revisado por [Fernando dos Reis]