Entendendo na prática High Order Functions | HandsOn | Onebitcode

Поделиться
HTML-код
  • Опубликовано: 8 ноя 2024

Комментарии • 25

  • @glaucialarrubia7495
    @glaucialarrubia7495 2 года назад +3

    Você é genial!!! Explica de forma clara e rápida! 😍❤️👏🏻👏🏻👏🏻👏🏻❣️😍😍

  • @o0marcio0o
    @o0marcio0o 2 года назад +4

    Esse vídeo explica melhor que e aula do curso full stack JS sobre o mesmo assunto, parabéns

    • @theflores999
      @theflores999 2 года назад

      também estou fazendo o curso fullstack e achei a explicação no modulo sobre function bem falho

    • @marcuscastro2435
      @marcuscastro2435 2 года назад

      @@theflores999 achei muito superficial

    • @theflores999
      @theflores999 2 года назад

      @@marcuscastro2435 sim, eu mesmo estou super perdido em eventos de dom, não consigo aplicar nada

    • @marcuscastro2435
      @marcuscastro2435 2 года назад

      @@theflores999 vc está em qual módulo do curso?
      Não terem explicado arrow-function tbm me fez ficar muito perdido

    • @theflores999
      @theflores999 2 года назад

      @@marcuscastro2435 objetos

  • @LearnEnglishwithKevin101
    @LearnEnglishwithKevin101 Год назад +2

    Ótima explicação mas as vezes o que não fica muito bem esclarecido é quando os programadores falam tipo assim:
    vou botar um text aqui (se referindo a variável text), quando ele retornar isso aqui quer dizer que ele está retornando essa outra função aqui (qual função? A dialog ou speakToMary?) , vou retornar essa função aqui (se referindo a função speakToMary???)...
    ao invés de usarem o aqui, poderiam falar o verdadeiro nome daquilo que estão se referindo. Isso facilitaria muito para os iniciantes como eu.

  • @nandomendesoficial2533
    @nandomendesoficial2533 Год назад +1

    Boa explicação!!!

  • @alfredoepq9689
    @alfredoepq9689 2 года назад +2

    Top.
    Gostaria da sua explicação sobre a parte
    function speakToMary(dialog) {
    const text = dialog("Mary")
    return "He says `${text}
    }
    Na linha 2, se
    dialog é uma function, porquê não há bloco de código, já que não é arrow function.

    • @marcosmathiasjunior2011
      @marcosmathiasjunior2011 2 года назад +3

      Olá amigo, bom eu acho que consegui entender.. vou tentar explicar e talvez eu esteja errado rsrs ( é um assunto novo pra mim, mas bora la ... kkk) :
      O parametro da função speakToMary é uma função, logo, se vc chama uma função no parametro, vc tem que passar um parametro para essa função( consufo? sim kkk)
      Ex: no minuto 5:42 , o dialog é a função greet, a função greet precisa receber um parametro, então, como dialog é a função greet, o parametro passado para greet seria "Mary".
      Vou exemplificar em código, não sei se esse código vai rodar, mas é só pra entendimento:
      Seria como se tivesse feito isso ( mas não seria uma High Order Funtion, pois não recebe uma função como parametro e sim uma string/texto)
      function falou(nameF1){
      return `Olá, ${nameF1}`
      }
      funtion eleDisse(nameF2){
      const texto = falou(nameF2);
      return `Ele disse a seguinte frase: "${texto}"`;
      }
      console.log(eleDisse("Alfreedo"))
      // Saida: Ele disse a seguinte frase: "Olá, Alfreedo"
      FIM!
      ****************************************************
      Como seria então com uma high order funtion?
      o código ficaria mais ou menos assim:
      function falou(nameF1){
      return `Olá, ${nameF1}`
      }
      funtion eleDisse(funcaoPassada){
      const texto = funcaoPassada("Alfreedo");

      return `Ele disse a seguinte frase: "${texto}"`;
      }
      console.log(eleDisse(falou)
      // Saida: Ele disse a seguinte frase: "Olá, Alfreedo"
      FIM!
      ***************************************************
      O que mudou ?
      No primeiro código chamamos a função eleDisse() passando como parametro um TEXTO/STRING. EX: eleDisse("Alfreedo)"
      E DENTRO DA FUNÇÃO eleDisse( ), nós criamos uma constante que recebe como valor o retorno da função falou() PASSANDO COMO PARAMETRO O TEXTO/STRING APONTADA EM (nameF2). Ex: const texto = falou(nameF2);
      **************************
      No SEGUNDO código NÃO PASSAMOS para a função eleDisse() um texto/string, mas, SIM UMA FUNÇÃO! passamos a função falou(). EX: console.log(eleDisse(falou)).
      Chamamos essa função passada como parametro de funcaoPassada, então, DENTRO DA FUNÇÃO eleDisse(funcaoPassada) A FUNÇÃO falou() se chama funcaoPassada.
      O que fizemos foi atribuir o valor da constante texto pra funcaoPassada("Alfreedo") que seria o mesmo que o const texto = falou(nameF2); do primeiro código, pois, funcaoPassada é a função falou(), por que ela foi passada como parametro.
      *****************************
      Qual é a real diferença já que o resultado foi o mesmo ?
      A diferença está no TIPO DE PARAMETRO PASSADO, quando passamos uma função como parametro para a função eleDisse(), a função eleDisse() se tornou uma High Order Funtion, pois recebeu uma função como um parametro, quando passamos no primeiro código somente uma string/texto a função eleDisse() não se tornou uma High Order Funtion, pois, ela recebeu uma string como parametro.
      Então podemos concluir que:
      High Order Funtion são funções que recebem outras funções como parametro!
      *******************
      eu acho que é isso, talvez eu esteja bem errado kkk mas, se eu estver errrado, ficarei feliz se alguém me ajudar a entender também.

  • @theBallaGames01
    @theBallaGames01 2 года назад

    Clareou bastante aqui, não tava associando que as HOF são os famosos .map, .filter kkkkk
    valeu Chris Cornell da OBC 😎

  • @peter8796
    @peter8796 Год назад

    a parte do filter eu entendi, agora a explicação mesmo da High Order Function nao consegui pegar por nada

  • @Hypeer
    @Hypeer Год назад

    Como cê tá rodando o js assim no terminal

    • @Castro_Ftsa
      @Castro_Ftsa 22 дня назад

      Isso se chama Node Js. É um programa q permite rodar o js fora dos navegadores 👍

  • @ricardolemos3608
    @ricardolemos3608 2 года назад +1

    No meu vs code não consigo utilizar ${...}. o que pode ser ?

    • @miguelmarquiori
      @miguelmarquiori 2 года назад

      Fala Ricardo beleza? Confere se tá usando crase ``, oh um exemplo:
      const greet = "olá sou miguel"
      console.log(`Quem sou eu ${greet}`).
      Espero ter ajudado.

    • @ricardolemos3608
      @ricardolemos3608 2 года назад +1

      @@miguelmarquiori muito obrigado, consegui aqui !!

    • @GleristonCastro
      @GleristonCastro Год назад

      Isso se chama template literals !

  • @ricardobezerra2794
    @ricardobezerra2794 2 года назад

    Top!

  • @NicolasSegatto
    @NicolasSegatto 2 года назад

    Show