{"id":10596,"date":"2023-08-13T07:14:18","date_gmt":"2023-08-13T10:14:18","guid":{"rendered":"https:\/\/www.homehost.com.br\/blog\/?p=10596"},"modified":"2024-05-02T10:59:40","modified_gmt":"2024-05-02T13:59:40","slug":"reduce-javascript","status":"publish","type":"post","link":"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/","title":{"rendered":"Reduce JavaScript: Desvendando a usabilidade e pr\u00e1tica"},"content":{"rendered":"\n<p>O m\u00e9todo <strong>&#8220;reduce JavaScript&#8221;<\/strong>, sendo uma fun\u00e7\u00e3o integrada, desempenha um papel crucial na programa\u00e7\u00e3o. Ao <strong>iterar atrav\u00e9s dos elementos de um array e combinar esses elementos em um \u00fanico valor<\/strong>, ele oferece uma abordagem eficaz para manipular dados.&nbsp;<\/p>\n\n\n\n<p>Esse m\u00e9todo requer a entrada de uma fun\u00e7\u00e3o de <strong><code>callback<\/code><\/strong> e um valor inicial como argumentos. A fun\u00e7\u00e3o de <strong><code>callback<\/code><\/strong> \u00e9 executada em cada elemento do array, acumulando resultados ao longo das itera\u00e7\u00f5es.<\/p>\n\n\n\n<p><strong>A relev\u00e2ncia do m\u00e9todo &#8220;<code>reduce<\/code>&#8221; na programa\u00e7\u00e3o em JavaScript destaca-se pela habilidade de executar opera\u00e7\u00f5es complexas em arrays de maneira eficiente e concisa.<\/strong> Assim, facilita a realiza\u00e7\u00e3o de c\u00e1lculos como soma, multiplica\u00e7\u00e3o e concatena\u00e7\u00e3o, condensando o array inteiro em um \u00fanico valor. Esse enfoque simplifica o c\u00f3digo e torna o processo de manipula\u00e7\u00e3o de dados mais leg\u00edvel.<\/p>\n\n\n\n<p>Adicionalmente, esse m\u00e9todo se destaca por lidar com arrays de objetos complexos. Permite a extra\u00e7\u00e3o de informa\u00e7\u00f5es espec\u00edficas e a agrega\u00e7\u00e3o de acordo com requisitos individuais. Sua utilidade estende-se ao trato de tarefas ass\u00edncronas, como promessas em JavaScript.&nbsp;<\/p>\n\n\n\n<p>Ele pode ser combinado com async\/await para lidar com processamento de dados ass\u00edncronos de maneira eficaz.<\/p>\n\n\n\n<p>Assim, continue a leitura e saiba mais sobre como usar o m\u00e9todo <strong><code>reduce<\/code><\/strong> JavaScript.<\/p>\n\n\n\n<p class=\"has-background\" style=\"background-color:#ff6a0038\">Outros t\u00edtulos interessantes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/switch-javascript\/\">Switch JavaScript: O que \u00e9 e como usar?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/tipos-de-funcoes-javascript\/\">Quais s\u00e3o os tipos de fun\u00e7\u00f5es JavaScript?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/alert-javascript\/\">Alert JavaScript: Como exibir uma mensagem na tela<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/map-javascript\/\">Map JavaScript: Potencializando a Efici\u00eancia com o Uso Desse M\u00e9todo<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/mudar-background-javascript\/\">Como mudar background em&nbsp;JavaScript<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/print-div-javascript\/\">Print Div JavaScript: como usar e quais as funcionalidades<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/foreach-javascript\/\">forEach JavaScript: exemplos pr\u00e1ticos<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/wordpress\/entendendo-e-utilizando-a-tag-span-em-html\/\">Entendendo e Utilizando a Tag span em HTML<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/select-html\/\">Select em HTML: crie menus em um formul\u00e1rio HTML<\/a><\/li>\n<\/ul>\n\n\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_72 ez-toc-wrap-center counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Conte\u00fado<\/p>\n<span class=\"ez-toc-title-toggle\"><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#Explorando_o_Metodo_Reduce_JavaScript\" title=\"Explorando o M\u00e9todo Reduce JavaScript\">Explorando o M\u00e9todo Reduce JavaScript<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#O_que_e_necessario_saber_para_compreender_o_metodo_reduce\" title=\"O que \u00e9 necess\u00e1rio saber para compreender o m\u00e9todo reduce?\">O que \u00e9 necess\u00e1rio saber para compreender o m\u00e9todo reduce?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#Exemplos_praticos_do_metodo_reduce_JavaScript\" title=\"Exemplos pr\u00e1ticos do m\u00e9todo reduce JavaScript\">Exemplos pr\u00e1ticos do m\u00e9todo reduce JavaScript<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#Primeiro_exemplo\" title=\"Primeiro exemplo\">Primeiro exemplo<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#Segundo_exemplo\" title=\"Segundo exemplo\">Segundo exemplo<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#Terceiro_exemplo\" title=\"Terceiro exemplo\">Terceiro exemplo<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#Exemplos_de_Reducao_em_Calculos_e_Estatisticas_com_metodo_reduce_JavaScript\" title=\"Exemplos de Redu\u00e7\u00e3o em C\u00e1lculos e Estat\u00edsticas com m\u00e9todo reduce JavaScript\">Exemplos de Redu\u00e7\u00e3o em C\u00e1lculos e Estat\u00edsticas com m\u00e9todo reduce JavaScript<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#Calculo_de_Soma_Total\" title=\"C\u00e1lculo de Soma Total\">C\u00e1lculo de Soma Total<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#Encontrando_o_Valor_Maximo\" title=\"Encontrando o Valor M\u00e1ximo\">Encontrando o Valor M\u00e1ximo<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#Calculo_da_Media\" title=\"C\u00e1lculo da M\u00e9dia\">C\u00e1lculo da M\u00e9dia<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#Contagem_de_Ocorrencias\" title=\"Contagem de Ocorr\u00eancias\">Contagem de Ocorr\u00eancias<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#Vantagens_do_metodo_reduce_JavaScript\" title=\"Vantagens do m\u00e9todo reduce JavaScript\">Vantagens do m\u00e9todo reduce JavaScript<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#Vantagens_do_Uso_de_Callbacks_para_Sintetizacao_de_informacoes_em_JavaScript\" title=\"Vantagens do Uso de Callbacks para Sintetiza\u00e7\u00e3o de informa\u00e7\u00f5es em JavaScript\">Vantagens do Uso de Callbacks para Sintetiza\u00e7\u00e3o de informa\u00e7\u00f5es em JavaScript<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#Aplicabilidade_do_metodo_reduce_JavaScript\" title=\"Aplicabilidade do m\u00e9todo reduce JavaScript\">Aplicabilidade do m\u00e9todo reduce JavaScript<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#Conclusao\" title=\"Conclus\u00e3o\">Conclus\u00e3o<\/a><\/li><\/ul><\/nav><\/div>\n\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Explorando_o_Metodo_Reduce_JavaScript\"><\/span>Explorando o M\u00e9todo Reduce JavaScript<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p><strong>O m\u00e9todo <code>reduce <\/code>\u00e9 uma \u00f3tima ferramenta em JavaScript que nos permite reduzir um array a um \u00fanico valor<\/strong>, aplicando uma fun\u00e7\u00e3o acumuladora aos elementos sequencialmente. Ao explorar o m\u00e9todo <strong><code>reduce<\/code><\/strong>, entenderemos seus componentes essenciais e como aplic\u00e1-lo eficazmente. Por exemplo:<\/p>\n\n\n\n<p><strong>Componentes-Chave<\/strong>:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Array Original<\/strong>: Comecemos com o array original que cont\u00e9m os elementos que queremos reduzir. Esses elementos podem ser n\u00fameros, <strong><code>strings<\/code><\/strong>, objetos ou qualquer tipo de dado;<\/li>\n\n\n\n<li><strong>Fun\u00e7\u00e3o Acumuladora<\/strong>: A fun\u00e7\u00e3o de <strong><code>callback<\/code><\/strong>, conhecida como fun\u00e7\u00e3o acumuladora, \u00e9 fundamental para o <strong><code>reduce<\/code><\/strong>. Ela recebe dois argumentos: o acumulador e o elemento atual do array. A fun\u00e7\u00e3o deve retornar o valor acumulado ap\u00f3s cada itera\u00e7\u00e3o;<\/li>\n\n\n\n<li><strong>Valor Inicial do Acumulador<\/strong>: O <strong><code>reduce<\/code><\/strong> permite um segundo argumento opcional, que \u00e9 o valor inicial do acumulador. Ele define o valor inicial para o primeiro c\u00e1lculo da fun\u00e7\u00e3o acumuladora. Caso n\u00e3o seja fornecido, o primeiro elemento do array ser\u00e1 usado como valor inicial;<\/li>\n\n\n\n<li><strong>M\u00e9todo <strong><code>reduce<\/code><\/strong><\/strong>: O m\u00e9todo <strong><code>reduce<\/code><\/strong> \u00e9 aplicado ao array e \u00e0 fun\u00e7\u00e3o acumuladora. Ele itera pelos elementos do array, atualizando o acumulador a cada passo e retornando o valor final ap\u00f3s a \u00faltima itera\u00e7\u00e3o.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"O_que_e_necessario_saber_para_compreender_o_metodo_reduce\"><\/span>O que \u00e9 necess\u00e1rio saber para compreender o m\u00e9todo <strong><code>reduce<\/code><\/strong>?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Arrays e Fun\u00e7\u00f5es<\/strong>: ter familiaridade com o funcionamento de arrays e o uso de fun\u00e7\u00f5es em JavaScript;<\/li>\n\n\n\n<li><strong>Sintaxe B\u00e1sica<\/strong>: conhecer a estrutura b\u00e1sica do m\u00e9todo <code>reduce<\/code> em arrays: <strong><code>array.reduce(callback[, initialValue])<\/code>;<\/strong><\/li>\n\n\n\n<li><strong>Callback do <code>reduce<\/code><\/strong>: compreender a fun\u00e7\u00e3o de callback fornecida ao <code>reduce<\/code>. Esta fun\u00e7\u00e3o atualiza um acumulador com cada elemento do array;<\/li>\n\n\n\n<li><strong>Valor Inicial<\/strong>: entender o valor inicial opcional, que inicializa o acumulador no processo de redu\u00e7\u00e3o;<\/li>\n\n\n\n<li><strong>Atualiza\u00e7\u00e3o com <code>return<\/code><\/strong>: utilizar o <strong><code>return<\/code> <\/strong>adequadamente para atualizar o acumulador na fun\u00e7\u00e3o de callback;<\/li>\n\n\n\n<li><strong>Acumula\u00e7\u00e3o de Dados<\/strong>: ter clareza sobre como os dados s\u00e3o acumulados a cada itera\u00e7\u00e3o do <code><strong>reduce<\/strong><\/code>;<\/li>\n\n\n\n<li><strong>T\u00e9rmino e Resultado<\/strong>: compreender quando o <strong><code>reduce<\/code> <\/strong>chega ao fim e retorna o resultado final;<\/li>\n\n\n\n<li><strong>Exemplos Pr\u00e1ticos<\/strong>: estar familiarizado com exemplos pr\u00e1ticos de uso, como a soma de n\u00fameros ou transforma\u00e7\u00e3o de dados;<\/li>\n\n\n\n<li><strong>Recursos de Aprendizado<\/strong>: utilizar a documenta\u00e7\u00e3o oficial do JavaScript e recursos online para aprofundar seus conhecimentos;<\/li>\n<\/ol>\n\n\n\n<p>Ao dominar esses conceitos, voc\u00ea estar\u00e1 pronto para empregar o m\u00e9todo <strong><code>reduce<\/code> <\/strong>de forma eficaz no processamento de arrays em JavaScript.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Exemplos_praticos_do_metodo_reduce_JavaScript\"><\/span><strong>Exemplos pr\u00e1ticos do m\u00e9todo reduce JavaScript<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Vamos explorar exemplos pr\u00e1ticos do uso do m\u00e9todo <strong><code>reduce<\/code><\/strong>:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Primeiro_exemplo\"><\/span><strong>Primeiro exemplo<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p><strong> Soma dos Elementos<\/strong>: Suponha que temos um array de n\u00fameros e queremos calcular a soma de todos os elementos.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>const numeros = &#091;1, 2, 3, 4, 5];\n\nconst soma = numeros.reduce(function(acumulador, numero) {\n\nreturn acumulador + numero;\n\n}, 0); \/\/ Valor inicial do acumulador \u00e9 0\n\nconsole.log(soma); \/\/ Sa\u00edda: 15<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Segundo_exemplo\"><\/span><strong>Segundo exemplo<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p><strong>Concatena\u00e7\u00e3o de Strings<\/strong>: Vamos concatenar strings de um array para formar uma frase.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>const palavras = &#091;'Ol\u00e1,', 'como', 'vai', 'voc\u00ea?'];\n\nconst frase = palavras.reduce(function(acumulador, palavra) {\n\nreturn `${acumulador} ${palavra}`;\n\n}, ''); \/\/ Valor inicial do acumulador \u00e9 uma string vazia\n\nconsole.log(frase); \/\/ Sa\u00edda: \"Ol\u00e1, como vai voc\u00ea?\"<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Terceiro_exemplo\"><\/span><strong>Terceiro exemplo<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p><strong>M\u00e9dia de Valores<\/strong>: Voc\u00ea tem um conjunto de notas de alunos e deseja calcular a m\u00e9dia. Por exemplo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>const notas = &#091;8, 7, 9, 10, 6];\n\nconst somaNotas = notas.reduce(function(acumulador, nota) {\n\nreturn acumulador + nota;\n\n}, 0);\n\nconst media = somaNotas \/ notas.length;\n\nconsole.log(media); \/\/ Sa\u00edda: 8<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Exemplos_de_Reducao_em_Calculos_e_Estatisticas_com_metodo_reduce_JavaScript\"><\/span>Exemplos de Redu\u00e7\u00e3o em C\u00e1lculos e Estat\u00edsticas com m\u00e9todo reduce JavaScript<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Vamos explorar casos pr\u00e1ticos envolvendo o m\u00e9todo <strong><code>reduce<\/code><\/strong> em JavaScript para realizar c\u00e1lculos e an\u00e1lises estat\u00edsticas em arrays. Com exemplos concretos, entenderemos como aplicar essa abordagem vers\u00e1til para sintetizar informa\u00e7\u00f5es valiosas. Acompanhe:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Calculo_de_Soma_Total\"><\/span><strong>C\u00e1lculo de Soma Total<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Suponhamos que voc\u00ea tenha um conjunto de valores representando vendas di\u00e1rias em uma semana. O objetivo \u00e9 calcular a soma total dessas vendas.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>const vendasDiarias = &#091;120, 200, 150, 180, 220, 170, 190];\n\nconst somaTotal = vendasDiarias.reduce(function(acumulador, venda) {\n\nreturn acumulador + venda;\n\n}, 0);\n\nconsole.log(somaTotal); \/\/ Sa\u00edda: 1030<\/code><\/pre>\n\n\n\n<p><strong>Explica\u00e7\u00e3o<\/strong>: No exemplo acima, usamos o m\u00e9todo <strong><code>reduce<\/code><\/strong> para acumular a soma das vendas di\u00e1rias. Come\u00e7amos com um valor inicial do acumulador (0) e, a cada itera\u00e7\u00e3o, somamos o valor da venda atual a esse acumulador. No final, obtemos a soma total de todas as vendas.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Encontrando_o_Valor_Maximo\"><\/span><strong>Encontrando o Valor M\u00e1ximo<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Imagine que voc\u00ea tenha um conjunto de temperaturas m\u00e1ximas di\u00e1rias de um m\u00eas e queira encontrar a temperatura m\u00e1xima registrada. Por exemplo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>const temperaturasMaximas = &#091;28, 31, 29, 33, 30, 32, 35, 29, 28, 31, 34, 36];\n\nconst temperaturaMaxima = temperaturasMaximas.reduce(function(acumulador, temperatura) {\n\nreturn temperatura &gt; acumulador ? temperatura : acumulador;\n\n}, temperaturasMaximas&#091;0]);\n\nconsole.log(temperaturaMaxima); \/\/ Sa\u00edda: 36<\/code><\/pre>\n\n\n\n<p><strong>Explica\u00e7\u00e3o<\/strong>: Nesse exemplo, aplicamos o m\u00e9todo reduce para comparar cada temperatura com o acumulador atual, que representa a temperatura m\u00e1xima encontrada at\u00e9 aquele ponto. Se a temperatura atual for maior que o acumulador, ela se torna o novo valor do acumulador. Assim, isso nos permite encontrar a temperatura m\u00e1xima registrada.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Calculo_da_Media\"><\/span><strong>C\u00e1lculo da M\u00e9dia<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Vamos supor que voc\u00ea tenha um conjunto de notas de estudantes e queira calcular a m\u00e9dia dessas notas. Por exemplo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>const notas = &#091;8, 7, 9, 10, 6];\n\nconst somaNotas = notas.reduce(function(acumulador, nota) {\n\nreturn acumulador + nota;\n\n}, 0);\n\nconst media = somaNotas \/ notas.length;\n\nconsole.log(media); \/\/ Sa\u00edda: 8<\/code><\/pre>\n\n\n\n<p><strong>Explica\u00e7\u00e3o<\/strong>: Neste exemplo, utilizamos o m\u00e9todo <strong><code>reduce<\/code><\/strong> para acumular a soma de todas as notas. Ap\u00f3s isso, dividimos a soma pelo n\u00famero total de notas para calcular a m\u00e9dia.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Contagem_de_Ocorrencias\"><\/span><strong>Contagem de Ocorr\u00eancias<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Suponha que voc\u00ea queira contar quantas vezes uma determinada letra aparece em uma <strong><code>string<\/code><\/strong>. Por exemplo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>const frase = \"javascript \u00e9 uma linguagem poderosa\";\n\nconst letraAlvo = \"a\";\n\nconst contador = frase.split('').reduce(function(acumulador, caractere) {\n\nif (caractere === letraAlvo) {\n\n&nbsp;&nbsp;&nbsp;&nbsp; acumulador++;\n\n}\n\nreturn acumulador;\n\n}, 0);\n\nconsole.log(contador); \/\/ Sa\u00edda: 4<\/code><\/pre>\n\n\n\n<p><strong>Explica\u00e7\u00e3o<\/strong>: Nesse caso, dividimos a <strong><code>string<\/code><\/strong> em caracteres individuais com <code><strong>split('')<\/strong><\/code> e, em seguida, aplicamos o m\u00e9todo <strong><code>reduce<\/code><\/strong> para contar quantas vezes a letra alvo aparece. A cada itera\u00e7\u00e3o, verificamos se o caractere atual \u00e9 igual \u00e0 letra alvo e incrementamos o contador, obtendo assim o n\u00famero de ocorr\u00eancias.<\/p>\n\n\n\n<p><strong>Vantagens e Conclus\u00e3o<\/strong>: A redu\u00e7\u00e3o em c\u00e1lculos e estat\u00edsticas usando o m\u00e9todo <strong><code>reduce<\/code><\/strong> oferece uma maneira eficaz e vers\u00e1til de analisar e sintetizar dados em arrays. Portanto, ao dominar essa abordagem, voc\u00ea poder\u00e1 realizar opera\u00e7\u00f5es complexas de maneira concisa e elegante. <\/p>\n\n\n\n<p>Em conclus\u00e3o, praticar e experimentar com exemplos como os apresentados ajudar\u00e1 a aprimorar suas habilidades de programa\u00e7\u00e3o e a explorar todo o potencial do m\u00e9todo <strong><code>reduce<\/code><\/strong> em suas aplica\u00e7\u00f5es.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Vantagens_do_metodo_reduce_JavaScript\"><\/span><strong>Vantagens do m\u00e9todo reduce JavaScript<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>A utiliza\u00e7\u00e3o da fun\u00e7\u00e3o &#8220;reduce&#8221; oferece diversas vantagens no contexto da programa\u00e7\u00e3o. Em primeiro lugar, <strong>ela possibilita a aplica\u00e7\u00e3o iterativa de uma opera\u00e7\u00e3o a elementos de uma sequ\u00eancia, reduzindo-os a um \u00fanico valor.<\/strong>&nbsp;<\/p>\n\n\n\n<p>Isso tem o potencial de consideravelmente simplificar o c\u00f3digo, eliminando a necessidade de loops complexos.<\/p>\n\n\n\n<p>Al\u00e9m disso, a fun\u00e7\u00e3o &#8220;reduce&#8221; <strong>contribui para a legibilidade do c\u00f3digo,<\/strong> uma vez que encapsula a l\u00f3gica de redu\u00e7\u00e3o em uma \u00fanica linha, tornando o processo mais claro e conciso.&nbsp;<\/p>\n\n\n\n<p>Esta abordagem <strong>\u00e9 especialmente ben\u00e9fica quando se lida com opera\u00e7\u00f5es de agrega\u00e7\u00e3o, pois, como a soma, multiplica\u00e7\u00e3o ou concatena\u00e7\u00e3o de elementos,<\/strong> onde a inten\u00e7\u00e3o do c\u00f3digo se torna mais evidente.<\/p>\n\n\n\n<p>Outra grande vantagem \u00e9 a possibilidade de trabalhar com sequ\u00eancias de elementos de forma mais eficiente.&nbsp;<\/p>\n\n\n\n<p><strong>A fun\u00e7\u00e3o &#8220;<strong><code>reduce<\/code><\/strong>&#8221; evita a necessidade de criar vari\u00e1veis intermedi\u00e1rias para armazenar resultados parciais,<\/strong> reduzindo o consumo de mem\u00f3ria e aprimorando o desempenho quando comparada a abordagens baseadas em loops tradicionais.<\/p>\n\n\n\n<p><strong>Adicionalmente, a fun\u00e7\u00e3o &#8220;<strong><code>reduce<\/code><\/strong>&#8221; fomenta a modularidade do c\u00f3digo.<\/strong> Atrav\u00e9s da defini\u00e7\u00e3o de uma fun\u00e7\u00e3o de redu\u00e7\u00e3o separada, torna-se vi\u00e1vel reutilizar essa fun\u00e7\u00e3o em diferentes partes do programa, facilitando a manuten\u00e7\u00e3o e diminuindo a duplica\u00e7\u00e3o de c\u00f3digo.<\/p>\n\n\n\n<p>Outra vantagem a se mencionar \u00e9 a sua <strong>aplicabilidade em cen\u00e1rios de processamento paralelo e distribu\u00eddo.<\/strong> A fun\u00e7\u00e3o &#8220;<strong><code>reduce<\/code><\/strong>&#8221; pode ser empregada para efetuar opera\u00e7\u00f5es de redu\u00e7\u00e3o de forma paralela, aproveitando os recursos de hardware modernos para acelerar o processamento.<\/p>\n\n\n\n<p>Para resumir, a utiliza\u00e7\u00e3o da fun\u00e7\u00e3o &#8220;<strong><code>reduce<\/code><\/strong>&#8221; traz consigo vantagens como a <strong>simplifica\u00e7\u00e3o do c\u00f3digo, aprimoramento da legibilidade, uso eficiente de mem\u00f3ria, promo\u00e7\u00e3o da modularidade e suporte ao processamento paralelo.<\/strong>&nbsp;<\/p>\n\n\n\n<p>Tais aspectos a tornam uma ferramenta valiosa para lidar com opera\u00e7\u00f5es de agrega\u00e7\u00e3o na programa\u00e7\u00e3o.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Vantagens_do_Uso_de_Callbacks_para_Sintetizacao_de_informacoes_em_JavaScript\"><\/span><strong>Vantagens do Uso de Callbacks para Sintetiza\u00e7\u00e3o de informa\u00e7\u00f5es em JavaScript<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Soma e Agrega\u00e7\u00e3o:<\/strong> Usado para somar valores num\u00e9ricos ou concatenar strings;<\/li>\n\n\n\n<li><strong>C\u00e1lculos Estat\u00edsticos:<\/strong> Calcula m\u00e9dias, m\u00e1ximos, m\u00ednimos, etc.;<\/li>\n\n\n\n<li><strong>Concatena\u00e7\u00e3o de Strings:<\/strong> Junta strings em uma;<\/li>\n\n\n\n<li><strong>Convers\u00e3o de Tipos: <\/strong>Transforma arrays em objetos ou outros tipos;<\/li>\n\n\n\n<li><strong>Transforma\u00e7\u00f5es Personalizadas:<\/strong> Filtra e transforma elementos;<\/li>\n\n\n\n<li><strong>Resumo de Dados: <\/strong>Simplifica dados complexos, agregando objetos;<\/li>\n\n\n\n<li><strong>C\u00e1lculos Financeiros:<\/strong> \u00datil para c\u00e1lculos financeiros;<\/li>\n\n\n\n<li><strong>Estruturas de Dados:<\/strong> Cria estruturas personalizadas, como \u00e1rvores;<\/li>\n\n\n\n<li><strong>Tratamento de Callbacks:<\/strong> Processa callbacks sequencialmente;<\/li>\n\n\n\n<li><strong>Opera\u00e7\u00f5es Ass\u00edncronas:<\/strong> Lida com opera\u00e7\u00f5es dependentes em s\u00e9rie.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Aplicabilidade_do_metodo_reduce_JavaScript\"><\/span>Aplicabilidade do m\u00e9todo reduce JavaScript<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Soma e Agrega\u00e7\u00e3o de Valores:<\/strong> a aplica\u00e7\u00e3o mais comum do `<strong><code>reduce<\/code><\/strong>` \u00e9 para somar ou agregar valores em um array. Isso \u00e9 \u00fatil para calcular a soma total de elementos num\u00e9ricos em um array ou para concatenar strings, por exemplo;<\/li>\n\n\n\n<li><strong>C\u00e1lculos Estat\u00edsticos:<\/strong> empregado para calcular m\u00e9dias, valores m\u00e1ximos, valores m\u00ednimos e outras estat\u00edsticas de um conjunto de dados;<\/li>\n\n\n\n<li><strong>Concatena\u00e7\u00e3o de Strings:<\/strong> ao utilizar o `<strong><code>reduce<\/code><\/strong>` em um array de strings, \u00e9 poss\u00edvel concatenar todas as strings em uma \u00fanica string, criando uma sa\u00edda concatenada;<\/li>\n\n\n\n<li><strong>Convers\u00e3o de Tipos:<\/strong> usado para converter um array em outro tipo de dado. Por exemplo, para transformar um array de <strong><code>strings<\/code><\/strong> em um \u00fanico objeto que mapeia cada string para seu comprimento;<\/li>\n\n\n\n<li><strong>Filtragem e Transforma\u00e7\u00e3o Personalizada: <\/strong>permite criar transforma\u00e7\u00f5es personalizadas em arrays, filtrando elementos com base em crit\u00e9rios espec\u00edficos e transformando-os em um \u00fanico resultado;<\/li>\n\n\n\n<li><strong>Resumo de Dados Complexos:<\/strong> pode ser aplicado para resumir ou simplificar dados complexos. Por exemplo, ao reduzir uma lista de objetos em um \u00fanico objeto agregado;<\/li>\n\n\n\n<li><strong>C\u00e1lculos Financeiros:<\/strong> pode ser utilizado para c\u00e1lculos financeiros, por exemplo: calcular o total de gastos ou lucros ao longo de um per\u00edodo de tempo;<\/li>\n\n\n\n<li><strong>Cria\u00e7\u00e3o de Estruturas de Dados Personalizadas:<\/strong> usado para criar estruturas de dados personalizadas, como \u00e1rvores ou gr\u00e1ficos, por meio da agrega\u00e7\u00e3o de elementos;<\/li>\n\n\n\n<li><strong>Tratamento de Callbacks:<\/strong> pode ser empregado para tratar uma s\u00e9rie de <strong><code>callbacks<\/code><\/strong> ou fun\u00e7\u00f5es de maneira sequencial, reduzindo a sa\u00edda final a um \u00fanico valor ou resultado;<\/li>\n\n\n\n<li><strong>Opera\u00e7\u00f5es Ass\u00edncronas:<\/strong> pode ser aplicado em opera\u00e7\u00f5es ass\u00edncronas para processar uma sequ\u00eancia de opera\u00e7\u00f5es, onde cada opera\u00e7\u00e3o depende do resultado da anterior.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Conclusao\"><\/span>Conclus\u00e3o<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p><strong>Em resumo, explorar o m\u00e9todo <\/strong><strong>reduce<\/strong><strong> em JavaScript revela sua utilidade pr\u00e1tica e versatilidade na an\u00e1lise e s\u00edntese de dados em arrays.<\/strong> Ao desvendar seus componentes essenciais e aplic\u00e1-los de forma eficaz, podemos realizar c\u00e1lculos complexos e an\u00e1lises estat\u00edsticas de maneira elegante e concisa. Atrav\u00e9s dos exemplos pr\u00e1ticos apresentados, aprendemos como calcular somas, encontrar valores m\u00e1ximos, calcular m\u00e9dias e realizar contagens de ocorr\u00eancias.&nbsp;<\/p>\n\n\n\n<p>Cada exemplo ilustra <strong>a capacidade do <strong><code>reduce<\/code><\/strong><\/strong> <strong>de transformar conjuntos de dados em informa\u00e7\u00f5es valiosas.<\/strong><\/p>\n\n\n\n<p>Assim, as vantagens do m\u00e9todo <strong><code>reduce<\/code><\/strong> se estendem \u00e0 sua capacidade de personaliza\u00e7\u00e3o e flexibilidade, permitindo que programadores apliquem l\u00f3gicas personalizadas a elementos do array.&nbsp;<\/p>\n\n\n\n<p>Dessa maneira, ao dominar essa abordagem, voc\u00ea estar\u00e1 equipado para abordar uma variedade de cen\u00e1rios de programa\u00e7\u00e3o, desde tarefas simples at\u00e9 an\u00e1lises complexas.<\/p>\n\n\n\n<p>Portanto, \u00e0 medida que voc\u00ea <strong>pratica e experimenta com os casos pr\u00e1ticos e exemplos apresentados,<\/strong> estar\u00e1 aprimorando suas habilidades de programa\u00e7\u00e3o e expandindo sua compreens\u00e3o das capacidades do m\u00e9todo <strong><code>reduce<\/code><\/strong>.&nbsp;<\/p>\n\n\n\n<p>Assim, voc\u00ea poder\u00e1 utilizar essa poderosa ferramenta para criar solu\u00e7\u00f5es mais eficientes, leg\u00edveis e elegantes em suas aplica\u00e7\u00f5es JavaScript. Aprofunde-se nesse conhecimento e continue explorando as possibilidades para elevar ainda mais suas habilidades de programa\u00e7\u00e3o.<\/p>\n\n\n\n<p>Em suma, <strong>o m\u00e9todo <strong><code>reduce<\/code><\/strong><\/strong> <strong>n\u00e3o apenas desempenha um papel fundamental na manipula\u00e7\u00e3o de arrays em JavaScript,<\/strong> mas tamb\u00e9m oferece um meio valioso para an\u00e1lise, s\u00edntese e transforma\u00e7\u00e3o de dados, tornando-se uma ferramenta indispens\u00e1vel para programadores em busca de efici\u00eancia e flexibilidade em suas tarefas de programa\u00e7\u00e3o.<\/p>\n\n\n\n<p>Considere aprender mais conte\u00fados como esse em nosso <a href=\"https:\/\/www.homehost.com.br\/blog\/\">blog<\/a> e, portanto, complementar seus conhecimentos.<\/p>\n\n\n\n<p>Por exemplo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/wordpress\/converter-de-elementor-para-editor-de-blocos-no-wordpress\/\">Como converter Blocos do Elementor para&nbsp;WordPress<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/wordpress\/como-descobrir-o-tema-wordpress-de-um-site\/\">Como Descobrir o Tema&nbsp;WordPress&nbsp;de um Site Usando HTML<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/wordpress\/botao-do-whatsapp-no-wordpress\/\">Como criar um bot\u00e3o do WhatsApp na hospedagem&nbsp;WordPress<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/wordpress\/como-excluir-um-tema-no-wordpress\/\">Como Excluir um Tema no&nbsp;WordPress<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/melhorar-a-performance-do-wordpress-gtmetrix\/\">Como melhorar a performance do seu site\u00a0WordPress\u00a0no GTMetrix<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>O m\u00e9todo &#8220;reduce JavaScript&#8221;, sendo uma fun\u00e7\u00e3o integrada, desempenha um papel crucial na programa\u00e7\u00e3o. Ao iterar atrav\u00e9s dos elementos de um array e combinar esses elementos em um \u00fanico valor, ele oferece uma abordagem eficaz para manipular dados.&nbsp; Esse m\u00e9todo requer a entrada de uma fun\u00e7\u00e3o de callback e um valor inicial como argumentos. A [&hellip;]<\/p>\n","protected":false},"author":31,"featured_media":10597,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_helpful_status":1,"_lmt_disableupdate":"","_lmt_disable":"","_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[6585],"tags":[],"class_list":["post-10596","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-javascript"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Reduce JavaScript: Desvendando a usabilidade e pr\u00e1tica | Homehost<\/title>\n<meta name=\"description\" content=\"Saiba como o m\u00e9todo &quot;reduce JavaScript&quot; itera atrav\u00e9s dos elementos de um array e combina esses elementos em um \u00fanico valor.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Reduce JavaScript: Desvendando a usabilidade e pr\u00e1tica | Homehost\" \/>\n<meta property=\"og:description\" content=\"Saiba como o m\u00e9todo &quot;reduce JavaScript&quot; itera atrav\u00e9s dos elementos de um array e combina esses elementos em um \u00fanico valor.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/\" \/>\n<meta property=\"og:site_name\" content=\"Homehost\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Homehost\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-08-13T10:14:18+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-05-02T13:59:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2023\/08\/4.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1260\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Daiana S\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@Homehost\" \/>\n<meta name=\"twitter:site\" content=\"@Homehost\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Daiana S\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/\",\"url\":\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/\",\"name\":\"Reduce JavaScript: Desvendando a usabilidade e pr\u00e1tica | Homehost\",\"isPartOf\":{\"@id\":\"https:\/\/www.homehost.com.br\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2023\/08\/4.png\",\"datePublished\":\"2023-08-13T10:14:18+00:00\",\"dateModified\":\"2024-05-02T13:59:40+00:00\",\"author\":{\"@id\":\"https:\/\/www.homehost.com.br\/blog\/#\/schema\/person\/eb90cb369d7098d6d85fa96c78ea1689\"},\"description\":\"Saiba como o m\u00e9todo \\\"reduce JavaScript\\\" itera atrav\u00e9s dos elementos de um array e combina esses elementos em um \u00fanico valor.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#primaryimage\",\"url\":\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2023\/08\/4.png\",\"contentUrl\":\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2023\/08\/4.png\",\"width\":1260,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/www.homehost.com.br\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Reduce JavaScript: Desvendando a usabilidade e pr\u00e1tica\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.homehost.com.br\/blog\/#website\",\"url\":\"https:\/\/www.homehost.com.br\/blog\/\",\"name\":\"Homehost\",\"description\":\"Hospedagem De Sites\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.homehost.com.br\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.homehost.com.br\/blog\/#\/schema\/person\/eb90cb369d7098d6d85fa96c78ea1689\",\"name\":\"Daiana S\",\"description\":\"Graduada em Letras pelo Instituto Federal da Para\u00edba e especializada em reda\u00e7\u00e3o geral. Gosto de escrever sobre tudo e me dedico em v\u00e1rios n\u00edveis de expressividade. No geral, todos os meus hobbies giram em torno de escrever alguma coisa e fazer isso bem. Contato: daiana.blog@homehost.com.br\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Reduce JavaScript: Desvendando a usabilidade e pr\u00e1tica | Homehost","description":"Saiba como o m\u00e9todo \"reduce JavaScript\" itera atrav\u00e9s dos elementos de um array e combina esses elementos em um \u00fanico valor.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/","og_locale":"pt_BR","og_type":"article","og_title":"Reduce JavaScript: Desvendando a usabilidade e pr\u00e1tica | Homehost","og_description":"Saiba como o m\u00e9todo \"reduce JavaScript\" itera atrav\u00e9s dos elementos de um array e combina esses elementos em um \u00fanico valor.","og_url":"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/","og_site_name":"Homehost","article_publisher":"https:\/\/www.facebook.com\/Homehost\/","article_published_time":"2023-08-13T10:14:18+00:00","article_modified_time":"2024-05-02T13:59:40+00:00","og_image":[{"width":1260,"height":630,"url":"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2023\/08\/4.png","type":"image\/png"}],"author":"Daiana S","twitter_card":"summary_large_image","twitter_creator":"@Homehost","twitter_site":"@Homehost","twitter_misc":{"Escrito por":"Daiana S","Est. tempo de leitura":"12 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/","url":"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/","name":"Reduce JavaScript: Desvendando a usabilidade e pr\u00e1tica | Homehost","isPartOf":{"@id":"https:\/\/www.homehost.com.br\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#primaryimage"},"image":{"@id":"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#primaryimage"},"thumbnailUrl":"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2023\/08\/4.png","datePublished":"2023-08-13T10:14:18+00:00","dateModified":"2024-05-02T13:59:40+00:00","author":{"@id":"https:\/\/www.homehost.com.br\/blog\/#\/schema\/person\/eb90cb369d7098d6d85fa96c78ea1689"},"description":"Saiba como o m\u00e9todo \"reduce JavaScript\" itera atrav\u00e9s dos elementos de um array e combina esses elementos em um \u00fanico valor.","breadcrumb":{"@id":"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#primaryimage","url":"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2023\/08\/4.png","contentUrl":"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2023\/08\/4.png","width":1260,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.homehost.com.br\/blog\/javascript\/reduce-javascript\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/www.homehost.com.br\/blog\/"},{"@type":"ListItem","position":2,"name":"Reduce JavaScript: Desvendando a usabilidade e pr\u00e1tica"}]},{"@type":"WebSite","@id":"https:\/\/www.homehost.com.br\/blog\/#website","url":"https:\/\/www.homehost.com.br\/blog\/","name":"Homehost","description":"Hospedagem De Sites","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.homehost.com.br\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Person","@id":"https:\/\/www.homehost.com.br\/blog\/#\/schema\/person\/eb90cb369d7098d6d85fa96c78ea1689","name":"Daiana S","description":"Graduada em Letras pelo Instituto Federal da Para\u00edba e especializada em reda\u00e7\u00e3o geral. Gosto de escrever sobre tudo e me dedico em v\u00e1rios n\u00edveis de expressividade. No geral, todos os meus hobbies giram em torno de escrever alguma coisa e fazer isso bem. Contato: daiana.blog@homehost.com.br"}]}},"modified_by":"Daiana S","jetpack_featured_media_url":"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2023\/08\/4.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/posts\/10596","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/users\/31"}],"replies":[{"embeddable":true,"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/comments?post=10596"}],"version-history":[{"count":7,"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/posts\/10596\/revisions"}],"predecessor-version":[{"id":14006,"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/posts\/10596\/revisions\/14006"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/media\/10597"}],"wp:attachment":[{"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/media?parent=10596"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/categories?post=10596"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/tags?post=10596"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}