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]