< Return to Video

16.4: for...of loop - Topics of JavaScript/ES6

  • 0:01 - 0:06
    Tô aqui pra te contar sobre algo que é bem daora, que eu realmente deveria saber quando eu fiz esse vídeo
  • 0:06 - 0:09
    mas é algo novo pra mim e será agora novo pra você ou talvez você já saiba disso.
  • 0:09 - 0:15
    Eu vou mostrar esse novo loop (laço de repetição) em Javascript chamado "for... of" ("para... de").
  • 0:15 - 0:16
    É, é como vou chamá-lo: "for... of".
  • 0:16 - 0:20
    Então... uh... muito, muito comumente... no exemplo anterior que eu fiz recentemente, certo?
  • 0:20 - 0:23
    Isso acontece o tempo todo. O tempo todo em programação:
  • 0:24 - 0:30
    - Ei, eu tenho um array (conjunto, arranjo) de coisas. Deixe-me passar por todo o array para agir em tudo que está dentro dele
  • 0:30 - 0:34
    E isso pode acontecer com arrays de objetos, tipo eu quero mover e exibir todos esses objetos
  • 0:34 - 0:36
    Poderia acontecer com arrays de números, tipo... ah...
  • 0:36 - 0:39
    deixe-me dobrar todos os números nesse array ou somar todos os números nesse array
  • 0:40 - 0:43
    E na verdade há outras formas de fazer isso também, as quais vou falar sobre em outros vídeos...
  • 0:43 - 0:46
    mas o que eu quero mostrar aqui é o "for... of" loop
  • 0:46 - 0:49
    então... o que de fato isso está dizendo aqui é
  • 0:49 - 0:53
    "for" (para) toda bolha no array de bolhas...
  • 0:53 - 0:56
    o problema é eu acredito que "in" (em) já significava algo diferente em Javascript
  • 0:57 - 1:01
    ou "each" (cada) sempre... há algo tipo "for each" (para cada)... então...
  • 1:01 - 1:06
    Estou especulando aqui mas eu imagino que... quando esse recurso saiu para Javascript...
  • 1:07 - 1:10
    os desenvolvedores precisaram escolher uma palavra, e essa palavra é "of" (de).
  • 1:10 - 1:17
    Então o que eu realmente vou dizer é tipo: esse índice i do array de bolhas representa cada elemento do ("of") array de bolhas
  • 1:17 - 1:20
    Então, na verdade, eu posso fazer exatamente o mesmo loop dizendo...
  • 1:20 - 1:26
    "for (let [every] bubble of bubbles)" (para cada bolha [elemento] de bolhas [array])
  • 1:26 - 1:33
    e então "bubbles.move()", ops, não "bubbles" (bolhas)... [ele corrige para "bubble.move()"] e "bubble.show()".
  • 1:34 - 1:36
    Agora, quando... então... isso é o que eu quero enfatizar aqui:
  • 1:36 - 1:38
    Esses [loops] são exatamente...
  • 1:38 - 1:40
    eu vou vir aqui pro lado...
  • 1:40 - 1:41
    Esses [loops] são exatamente iguais
  • 1:41 - 1:43
    Movi meu mouse pra fora do caminho aqui hahah
  • 1:43 - 1:45
    Não... Eu devo parecer perfeito na tela aqui, certo?
  • 1:45 - 1:51
    Isso sou eu contando o índice para endereçar (definir) todo elemento dentro array, e movendo e exibindo-os
  • 1:51 - 1:53
    Isso sou eu apenas dizendo: - Ei, Javascript!
  • 1:54 - 1:57
    - Eu não tô a fim de contar hoje, você poderia tomar conta disso pra mim?
  • 1:57 - 2:02
    - Só pegue cada uma das bolhas, em ordem, no array de bolhas, e as mova e exiba
  • 2:02 - 2:06
    Agora, haverão momentos em vídeos futuros onde eu começo a deletar coisas do array...
  • 2:06 - 2:08
    ou talvez eu só queira usar metade do array.
  • 2:08 - 2:11
    Aí esses são casos onde eu realmente preciso do contador (de índices).
  • 2:11 - 2:13
    Há vários casos em que o contador exerce um papel.
  • 2:13 - 2:17
    Mas se o contador não exerce papel algum, e você só quer fazer algo a todo elemento dentro do array...
  • 2:17 - 2:18
    isso é uma das coisas que se pode fazer.
  • 2:18 - 2:22
    Agora, o que eu não gosto nisso e isso é... faço isso o tempo todo e vários programadores fazem isso... é:
  • 2:22 - 2:24
    - Eu tenho uma classe chamada "Bubble" (Bolha)...
  • 2:24 - 2:28
    com B maiúsculo... aqui embaixo, heh...
  • 2:28 - 2:31
    eu tenho um array chamado "bubbles" (bolhas), com B minúsculo...
  • 2:31 - 2:34
    com um s no final; plural porque são várias...
  • 2:34 - 2:39
    e aí eu tenho "bubble" (bolha) que é tipo uma bolha individual que representa toda bolha dentro do array.
  • 2:39 - 2:42
    Então... eu só queria enfatizar que isso poderia simplesmente ser chamado de, sabe...
  • 2:42 - 2:46
    se o nome das bolhas fosse... uh... "unicorn" (unicórnio)
  • 2:46 - 2:51
    Isso é só um nome inventado de variável; é a palavra que representa cada elemento dentro do array.
  • 2:51 - 2:52
    E então, tipo, eu poderia dizer:
  • 2:52 - 2:56
    "let elt of bubbles" (cada elemento de bubbles), por exemplo... sabe...
  • 2:56 - 3:00
    Mas isso é tipo uma convenção a qual eu poderia aderir.
  • 3:00 - 3:03
    A classe, o tipo de coisa, é Bolha com B maiúsculo...
  • 3:03 - 3:06
    quando eu tenho um array delas, eu vou chamá-lo de bolhas (b minúsculo), com um "s"...
  • 3:06 - 3:08
    quando eu tenho uma individual vou chamá-la de bolha (b minúsculo)...
  • 3:08 - 3:10
    mas não há razão alguma pela qual você deve nomear as coisas dessa forma.
  • 3:10 - 3:12
    Eu poderia chamá-las de BubbleClass (ClasseBolha)...
  • 3:12 - 3:15
    SingleBubble (BolhaIndividual), BubbleArray (ConjuntoBolha)... esse tipo de coisa.
  • 3:15 - 3:22
    Então basicamente é isso... eu vou usar esse tipo de loop em outros vídeos...
  • 3:22 - 3:25
    e aí acho que eu poderei usar esse como referência, quando for gravar os próximos.
  • 3:25 - 3:26
    Espero que isso tenha feito sentido.
  • 3:28 - 3:30
    Estou olhando pros lados pra ver se vocês têm alguma pergunta...
  • 3:30 - 3:33
    mas vocês estão no futuro, eu nem mesmo sei quem vocês que estão assistindo esse vídeo são...
  • 3:34 - 3:35
    mas aí está você, em algum dia, assistindo esse vídeo.
  • 3:35 - 3:41
    Eu provavelmente não estou mais em pé aqui, estou em outro lugar... esse vídeo acabou [Dan toca a campainha]
Title:
16.4: for...of loop - Topics of JavaScript/ES6
Description:

more » « less
Video Language:
English
Duration:
03:52

Portuguese, Brazilian subtitles

Revisions