Então nós já criamos essa variável legal para os olhos do Winston, a qual tem sido realmente útil porque nos salvou de digitar muito, quando queremos mudar o tamanho dos olhos Lembre-se que antes tínhamos que digitar o mesmo número quatro vezes, sempre que queríamos mudar o tamanhos dos olhos dele Mas nós podemos usar variáveis para substituir números quando eles não são iguais? E se eu quisesse mover o Winston um pouquinho? Nós poderíamos mudar cada uma dessas coordenadas x, mas elas não são iguais, então eu não posso substituí-las com alguma variável Mas espere! Uma vez que eu atribuir um número a uma variável, eu posso usar essa variável exatamente como se fosse aquele número O que significa, eu posso usar variáveis em expressões matemáticas Que tal isso, vamos criar uma variável para a posição x de Winston Vamos chamar de "var x" Simples o suficiente, okay, agora vamos da-la o valor da coordenada x da cara do Winston A cara dele está sendo desenhada na coordenada x 200 Então nós dizemos var x recebe 200 (var x = 200;) Agora eu posso substituir esse número com a minha nova variável "x". E quando eu mudar o valor de x, a cara do Winston move Mas não seus olhos ou sua boca Para arrumar isso, nós teremos que definir a posição dos olhos deles e da boca, relativa a posição da cara. Então a coordenadas "x" serão os centros de todas as outras elipses, então a cara dele está sendo desenhada em... 200, agora vamos fazer seu olho esquerdo primeiro, essa elipse é o olho esquerdo dele, e podemos ver que está desenhada em 150 Então bem aqui é 150 E eu sei que 150 é 200 menos 50 Então seu olho esquerdo deverá estar sempre onde a cara dele está, menos 50 Então vai ser "x", que é a posição da cara dele, menos 50 E agora se eu mudar o valor dessa coordenada x, o olho dele se move junto com a cara Vamos fazer os outros. Então o olho direito dele é está desenhado em 300, eu posso ver, então aqui é 300 E 300, eu sei que é 100 a mais que 200 Então o olho direito deverá estar sempre aonde a cara estiver mais 100 Isso é x+ 100 Agora nós temos apenas a boca, que está sendo desenhada em 250 É bem aqui, nós temos 250, e 250 é 200 mais 50 Ela sempre estará onde a cara está x + 50 Agora eu vou me livrar desses rabiscos. Sempre que eu mudar o valor de x, vai mover a cara inteira! Antes de você ir, você devia saber umas coisas a mais sobre variáveis Uma vez que você criou uma variável usando var x Você pode atribuir o valor quantas vezes você quiser. Então depois de dar a x o valor 198, eu posso dizer que x recebe 300, ou x recebe 150 A partir daí, o computador tratará x como nós atribuímos por último Nesse caso 150 Mas você só precisar digitar var uma vez por variável Se aqui eu digitar var x = 150; em vez disso, isso vai ter criado uma nova variável chamada x Completamente destruindo a velha variável x no processo, então todas essas variável terão indo para a lixeira E depois disso o computador apenas usará a nova variável Algumas vezes você pode fazer isso sem que coisas terríveis aconteçam, mas eu não aconselharia. Por hora eu só vou fazer isso uma vez ( var x = 150;) E agora convenientemente eu posso mover todo o Winston para fora da tela, então eu posso falar sobre o próximo assunto Então sempre que você tiver uma variável igual a algo, essa variável está num lugar seguro e feliz. Na verdade no lado esquerdo do sinal de igual está o único lugar onde uma variável pode verdadeira se sentir como uma porque este é o único lugar que o computador a considerará como variável. Em qualquer outro lugar, o computador apenas finge que é um valor Mesmo que façamos algo assim, var x recebe 10 (var x = 10;) E então, x recebe x (x = x;) Uau, confuso Bem, na esquerda, nós temos x, que é um variável livre e independente, que pode crescer, que pode mudar! Mas na esquerda é apenas 10 Triste :( Mas isso significa que podemos fazer coisas realmente úteis como Eu posso dizer que x recebe x+1 (x = x+1;) Então nas esquerda temos nossa variável em um lugar seguro e feliz, e na direita nós temos essa variável, a qual nós sabemos que basicamente é só um número É só 10 Então nós mentalmente substituímos esse x por 10 mais 1 Que apenas significa x recebe 11 Então essa linha inteira está basicamente dizendo x recebe 11, então de agora em diante o valor de x é 11 Vamos ver o que acontece se trazermos outra variável para a equação Nós faremos var x recebe 10 (var x = 10;) var y recebe 20 (var y = 20;) x recebe y (x = y;) e y recebe 7 (y = 7;) Ok, o que eu quero saber é, qual o valor de x? Vamos descobrir Então neste ponto criamos uma nova variável x, e atribuímos o valor 10 Então o valor de x é 10 Nesse ponto aqui, criamos uma nova variável y e a demos o valor 20 Então não fizemos nada em x, então o valor de x ainda é 10 Aqui nós estamos dizendo x recebe y. Bem isso é muito confuso, mas se você pensar sobre isso nós sabemos que apenas uma dessa variáveis está no lugar seguro e feliz. E a outra variável está sendo tratada exatamente como se fosse um número Então aqui nós mentalmente substituímos esse y com o seu valor, que é 20, e nós sabemos o que aquele sinal realmente significa é que x recebe 20. Então o valor de x é 20! E aqui nós temos o y no lugar seguro e feliz dessa vez, mas esse não é realmente confuso porque nós temos um número do outro lado Aqui está a grande questão, quando eu mudo o valor do y aqui, isso muda o valor de x ali em cima? A resposta, NÃO!! Você tem que lembrar, aqui em cima y está sendo tratada apenas como um número O computador vai ignorar completamente que é uma variável, esquecer que de fato ela pode mudar e ele só vai dizer "oh, y o que você realmente significa é 20" Então bem qui, nós estamos atribuindo um número a x, não estamos atribuindo uma variável, estamos adicionando o valor de y, que é 20 E isso significa que o valor de x continua 20, mesmo que depois nós mudemos o valor dessa variável y na última linha Ufa! Capisce? Bem agora vocês são especialistas em variáveis, parabéns!!