Eu posso voltar nesta lição.
Continuamos a falar de uma corrida e nos concentraremos na iteração da matriz.
Então, até este ponto, vimos como podemos criar uma matriz de como uma matriz é apenas uma lista de dados,
podemos armazenar o que quisermos lá.
Podemos armazenar números e cordas e valores booleanos, podemos armazenar outros arrays, mas a idéia é que nós
armazenamos coisas lá e nós fizemos as coisas e nós acessamos informações como me dê o primeiro
item me dê o último item ou usamos push e pop e shift e n shift.
como podemos acessar cada pedaço de uma matriz ou fazer algum código para cada item em uma matriz.
Mas até este ponto, não vimos
E isso é o que a iteração da série refere-se à iteração sobre uma lista iterando sobre uma matriz.
Básicamente fazendo um loop dessa matriz e fazendo algo para cada item ou com cada item.
Então, eu lhe darei alguns aplicativos do mundo real, alguns exemplos reais de iteração de conjuntos.
Portanto, um exemplo comum é comentários e postagens.
Então, um blog diz se é tumblr ou Reddit, acho que o tumblr realmente não tem comentários,
mas digamos, lê-lo e lê-lo.
A publicação tem muitos comentários.
Bem, esses comentários são armazenados em uma matriz e, para exibir todos esses comentários, o que realmente acontece
é que alguns links de código através dele itera sobre essa matriz com 10000 comentários potencialmente e para cada um
os torna cada vez todo o conteúdo e faz um pouco Ally ou faz um parágrafo, qualquer que
seja o comentário que o envelhecer, é gerado em um loop.
Quando repetiremos o Iraque, estaremos fazendo algo muito parecido com os comentários também.
Mais tarde, neste curso, quando falamos sobre o Noad e o expressamos de volta no desenvolvimento, estaremos usando um
loop para iterar sobre uma série de comentários para imprimir cada comentário.
Nós também estaremos usando a iteração da matriz quando você fizer isso para fazer a lista.
Então, nós já começamos uma lista simples de fazer, mas quando realmente adicionamos em cada malmsey, a SS usará um
loop a seguir para fazer cada um e fazer uma pequena div para cada uma delas e depois iremos ao estilo de cada uma delas.
Mesmo quando você faz um aplicativo de blog, vamos usar um loop e para cada blog em nossa série de blogs,
vamos fazer algo.
Vamos fazer uma pequena postagem no blog na página.
Portanto, a radiação é realmente importante.
Provavelmente é a coisa mais comum que fazemos com os arrays.
Temos uma lista de dados.
Normalmente, você quer fazer algo com tudo naquela lista.
Caso contrário, se você quiser trabalhar na primeira coisa sempre ou o sétimo item sempre, talvez você não
esteja usando uma matriz.
Talvez você apenas armazene esse item por conta própria.
Então temos três objetivos aqui.
O primeiro é que eu quero mostrar-lhe como você pode usar um loop for para iterar sobre uma
matriz e então eu vou mostrar-lhe algo novo chamado para cada um.
Então você viu quatro loops antes, mas um foreach é algo novo, é excitante na minha opinião.
É realmente muito útil também.
E então a última coisa que faremos é comparar os dois.
Então vamos começar aqui, eu tenho um exemplo de usar um loop for para fazer um loop por uma matriz.
Então, temos uma série de cores que tem quatro itens para cordas vermelhas laranja amarelo e verde.
Agora, se eu quisesse imprimir cada um, se não falássemos sobre isso, não fizemos uma nova iteração.
Vou copiar isso aqui.
O que eu teria que fazer é algo assim.
depois faça o mesmo para 1 e 2.
Cancelar que o log colore zero e
E então, por fim, para 3, o que nos dá verde e os visitantes se dirigem nocivos, mas isso não é tão ruim
quanto poderia ser se tivéssemos dez mil cores nesta série ou 10000 comentários sobre ou ler uma postagem.
Então, obviamente, isso realmente não funcionaria para nós.
Sem mencionar o fato de que não é um código seco.
Estamos repetindo-nos o tempo todo.
Então, usamos um loop para ajudar a automatizar esse processo porque o que estamos fazendo aqui é a mesma operação.
A única coisa que muda é o número 8 aqui.
E cada vez que estamos apenas adicionando um.
Então estamos começando no início da matriz e estamos indo até o fim para que você possa apenas
fazer isso com um loop for como você pode ver aqui.
Portanto, o FOR FOR nosso olho nossa variável começa em zero porque esse é sempre o primeiro índice na matriz.
E então, adicionamos um a cada vez através do loop e continuamos.
Uau.
É menor que o comprimento da matriz de cores.
Então lembre-se de que o comprimento dessa matriz é quatro.
Então, enquanto eu tiver menos de quatro horas, nunca deve ser igual a quatro porque as cores quatro não estão definidas.
Então, esse tipo de loop for é realmente muito comum.
Então, deixe-me apenas digitá-lo aqui para o nosso olho ser igual a zero olhos menos do que a cor flanqueada e você não
precisa fazê-lo dessa maneira.
Você também pode fazer menos ou igual duas cores de comprimento.
Amanda Swon, que é um pouco mais, então a maioria das pessoas não escreveria assim, mas é
o mesmo.
Então feche-me como eu mais plus e abra nossos suportes.
E o que faremos aqui em vez de conselhos sobre o registro, vamos fazer as cores alertas alertas.
Eu apenas gosto disso.
Então, na verdade, isso não deve ser tão novo que ver nos ver usando um loop for como este é novo, mas não há nada de
novo aqui no que diz respeito aos conceitos.
É apenas um loop for que você já viu um número começando em zero e estamos indo
e contamos outro número e então tudo o que estamos fazendo é conectar esse número a uma matriz.
Então vamos tentar isso.
E eu espero que você possa ler isso. Eu acabei com o verde vermelho amarelo laranja.
E vamos fazer o mesmo apenas com o conselho com a Lague em vez disso.
E nós vamos lá.
Então, novamente o que realmente faria com algo como comentários que fazem pelo nosso chamado.
E então eu perguntei menos e comentou ao longo do tempo, em vez de cancelar o registro de algo
que possamos ter uma função chamada fazer comentário o afastou ou algo assim e que seria responsável por fazer todo o
iChat ele Alpher um comentário e agora estamos fazendo é para cada item na matriz de comentários.
ESTÁ BEM.
Então é assim que podemos usar um loop for.
Podemos também ir para trás, então começamos no final da matriz e continuamos até atingir zero.
Mas isso é um pouco menos comum, mas há toda uma outra maneira de iterar através de uma matriz
chamada de foreach.
E, na minha opinião, é muito melhor usá-lo é mais simples, é mais curto e é mais comum hoje em dia.
Agora, para cada um, sempre foi parte do Javascript.
Portanto, é relativamente novo em comparação com o uso de um loop for ou simples para loop para loop através de uma matriz.
Ele saiu em um eu acho que 2009 ou assim.
que vale a pena, acho que é a melhor maneira de fazer um loop em uma matriz.
Então, haverá tutoriais e há alguns livros mais antigos que não o referenciam, mas pelo
Há um pouco de obstáculo para superar o início, como você verá aqui.
É algo novo, é um pouco intimidante onde realmente estamos passando uma função para outra função.
Então vou explicar isso em apenas um momento.
Mas, uma vez que você superar isso, uma vez que você aprenda a sintaxe e se
acostume com isso e você sabe quando precisa de colchetes entre parênteses e há um pouco de bagagem que
você precisa passar no começo, mas uma vez você está confortável com isso é muito mais fácil do que
usar um loop for.
É mais rápido e você verá todo o lugar e eu farei o meu melhor para tentar e ser um uso equilibrado
para o uso de loops, apenas para atrapalhar você de ambas as direções para que você se acostume com ambos.
Mas eu vou te dizer agora que eu sou parcial a quatro cada.
Então, aqui está o que é.
É um método chamado para cada um que é definido em cada matriz.
É parte de algo chamado o protótipo da matriz que é onde todos esses métodos, como push e pop,
e deslocam e não enviados. É onde todos eles vivem.
Então o que ele faz é que é uma função como um argumento como você pode ver aqui.
Então, nós escrevemos a matriz, seja qual for o nome da matriz, é o ponto de comentários de cores para cada custo de
camelo por caso.
E então passamos uma função.
Então, na verdade, não se parece com isso.
Normalmente, o que você verá com mais freqüência é uma função anônima, como nós temos aqui.
Então você passa nesta coisa toda, que é uma função e então essa função é chamada para cada
elemento na matriz.
Então, deixe-me mostrar um exemplo aqui.
Vamos pegar esse código.
Copie esta matriz e depois limpe a tela primeiro.
Então, temos a matriz de cores e depois escrevemos cores para cada uma.
E sempre que eu passar, seremos chamados em cada elemento e, em seguida, normalmente teremos um
problema nano aqui e não vou dar nenhum argumento.
Vou explicar o que esse argumento é em apenas um momento.
Então, colourista para cada um.
E então, apenas a função vazia.
E, por enquanto, faremos constante acumulação de água dentro de cada um.
Dê um momento para pensar o que você espera que aconteça. Eu disse que ele causa
função para cada item na matriz e eu vou entrar em.
E eu sempre esqueço disso, não faz muito bom vídeo aqui, mas o Chrome irá compactar todos esses
conselhos logs em uma linha.
Mas há um número para o vermelho aqui.
Por isso, é repetido quatro vezes um para cada item na matriz.
maneira mais fácil de ver isso realmente seria um alerta e eles receberão uma carta para alertar três e quatro alertas.
Então, uma
Então está fazendo isso para cada item na matriz.
Mas isso não é tão útil apenas para executar algum código x número de vezes ou comprimento menos um número
de vezes para uma matriz.
Geralmente, queremos usar os dados dessa matriz de alguma forma.
Se está fazendo comentários a cada momento agora se está salvando algo no banco de dados
se é adicionar algo a uma pontuação para cada item, mas geralmente queremos interagir ou manipular
esses dados de alguma forma, em vez de apenas alertar arbitrariamente ou chegar a esse registro.
Assim, a forma como obtemos esses dados é ter nossa função, independentemente dessa função, se é
uma função anônima uma expressão de função de função com nome.
Não importa.
Mas, seja qual for a função, é que possamos, exceto um argumento, então permita-me reescrever isso aqui e pode ser chamado
qualquer coisa que queremos, como qualquer outra função que definimos.
Então eu vou começar com um nome terrível, como eu amo cães, que você esperaria nunca usar em seu código, a menos
que realmente tenha sentido em alguma situação.
Não consigo pensar em muitos, e o que farei é tirar qualquer cachorro e imprimir.
Eu amo cachorros cada vez, então não faça login dentro de para cada um.
Além disso, eu amo cães e vou entrar e você verá que entramos dentro da forragem lida dentro da laranja forrageira dentro do
amarelo forrageiro e, finalmente, dentro do para cada verde.
Então, o que está acontecendo é que eu amo cães é segurar o valor de cada item naquela matriz à medida que avançamos
ou como o foreach passa.
Então está chamando esta função para cada item, toda esta função aqui.
E não só é apenas chamá-lo, mas está passando em vermelho e depois laranja e depois
amarelo e depois verde nesta função.
Então, deixe-me mostrar-lhe uma sintaxe alternativa.
Bem, não é realmente uma sintaxe alternativa, mas outra maneira de definir uma função e passá-la.
Então é como qualquer outra função.
E vai chamá-lo de cor de impressão e tudo o que fará é levar um argumento chamado Cor
e, em vez de aqui, vou fazer um registro constante e vamos fazer uma linha de estrelas para começar e eu copiarei
essa linha e então, abaixo, não registrará cor.
E, novamente, um esboço de peça.
ESTÁ BEM.
Então, temos que encontrar uma função simples.
Espero que esta seja uma revisão neste ponto. Demonstra um argumento chamado Cor e toçe Enter não acontece
porque eu apenas defini a função.
Mas agora, se eu chamar de cor de impressão e vamos fazer o roxo.
Obviamente, a melhor cor eu consigo estrelas estrelas roxas.
E, assim como a revisão, eu não estou definido porque minha função realmente não retorna nada, mas
imprime três linhas.
é as cores que é a minha matriz para cada um e depois em vez de digitar uma função inteira aqui.
OK, então eu posso usar para cada um para executar esta cor de impressão em cada item da matriz e tudo o que tenho que fazer
Tudo o que eu faço é passar na cor de impressão e esta é uma nota realmente importante que eu não coloco parênteses
aqui se eu colocar esses parênteses lá.
Vou chamar imediatamente essa função.
Lembre-se sempre que o javascript vê uma função seguida de parênteses, ele o executa.
Portanto, não importa que eu esteja passando para cada um. Será chamado antes de
querermos chamar o que realmente queremos fazer é passar a cor de impressão sem parênteses, estamos dizendo para cada um.
Aqui vamos nós.
Aqui está a função.
Quero que me ligue mais tarde.
Quando você roda e eu quero que você ligue para cada item na matriz.
Então, o que acontecerá se avançarmos rapidamente.
Bem, deixe-me entrar em primeiro lugar e você verá que ficamos roxos enquanto ele começa aqui vermelho laranja amarelo
e verde.
Então, o que está acontecendo nos bastidores é que, para cada um, está tirando cor de impressão
e está executando a cor de impressão, cor vermelha, cor de impressão, exceto que realmente não se parece assim.
Parece mais com esta impressão cores de cores Pi que começa em 0 e então cores bonitas, uma.
Então, está levando a nossa função de cores de impressão e está realmente ligando para nós.
Então, apenas diga o que chamar e chamaremos os itens.
Então, para cada um É muito bom, porque não temos que trabalhar com a gente, não precisamos escrever a
sintaxe para um loop for e não temos que acessar as cores que eu possamos dentro do nosso código ou que possamos acessar é o que quer que seja
chamamos isso aqui.
Então, cor neste caso, mas lembrei que mostrei que, como eu amo cachorros, o que não é um
bom nome realmente, mas pode ser tudo o que queremos e, espero, isso significa mais do que cores.
Então, novamente, podemos usar ambos para cada um e para cada um é mais novo, mais popular e eu prefiro, mas
vou fazer o meu melhor para lhe dar uma perspectiva equilibrada ou pelo menos forçá-lo a ver os dois.
E então aqui está uma comparação das duas formas de fazer um loop e há mais de duas
maneiras de usar um ciclo de tempo, claro, que vou mostrar brevemente.
Podemos fazer o mesmo por cores.
Tudo o que precisamos fazer é definir uma variável.
Vamos chamar isso de contagem e é igual a zero no início.
E então, vamos fazer, enquanto a contagem é menor do que o tamanho do colorista exatamente como o nosso para cada um.
Quero dizer, como um loop for.
E, em seguida, em vez de aqui, temos que incrementar a contagem antes de nos esquecer e então podemos fazer
apenas uma conta de cor de registro alt constante.
Então, é um pouco mais de sintaxe, assim como todo o loop de tempo geralmente é comparado a um loop for.
Nós temos que definir uma variável primeiro e, então, temos que incrementá-la dentro do loop e acabamos com
verde vermelho amarelo laranja.
Então, você poderia usar um loop de tempo, mas é realmente raro, quase nunca verá ninguém fazer isso.
É quase sempre um loop para ou para cada um.
E cada vez mais é praticamente sempre para cada um.
Há casos em que, para cada um, não existe, o que me certificarei de apontar com
algumas coisas do navegador algumas das coisas HMLC Ss e Javascript quando combinarmos tudo juntos haverá momentos
em que estamos trabalhando com coisas que parecem arrays, mas na verdade não são.
E é realmente confuso.
Mas vou me certificar de que você está ciente disso e não podemos usar isso para cada um deles.
Portanto, é sempre bom lembrar como você escreve um loop for e como você faz o mesmo com cada um.
Então, é por isso que este código mostra que você leva um momento para estudá-lo se desejar.
As principais diferenças são o fato de que em um loop for estamos lidando com um número.
Então, estamos indo de um número de zero até o final da matriz e estamos realmente usando esse número
para acessar as cores da matriz.
Eu em um foreach que é abstraído de nós.
Então, tudo o que estamos lidando é um nome que criamos uma cor do espaço reservado temporário ou item ou coisa,
seja qual for, é amigo do post de comentários e você usa isso em vez de uma função.
verá uma função anônima aqui, a menos que haja uma função que você deseja reutilizar mais tarde e que você queira chamá-la
de outras partes do seu código, então você pode defini-lo, você pode dar-lhe um nome fora do foreach .
E o mais comum na maioria das vezes você
ESTÁ BEM.
Então cobrimos muito.
Eles são coisas muito importantes, além de funções mais arrays, tipo de coisas que se juntam agora.
Mais uma vez, farei o meu melhor para garantir que você veja as duas formas de escrever um loop ao longo
do curso e, em seguida, temos um exercício muito rápido e rápido que não deve demorar mais de 30 segundos.