Pesquisar neste blog

20/07/2020

Modulo em JavaScript

Arquivo: ModuloA.js
//Exportar algo para ser usando em outro
this.ola = 'Olá Mundo !'
exports.bemVindo = 'Bem vindo em JavaScript !'
module.exports.ateLogo = 'Até ao próximo exemplo !'

Arquivo: ModuloB.js
module.exports = { //forma de exportação
    bomDia: 'Estou no MóduloB, Bom dia',
    boaNoite(){
        return 'Estou no MóduloB, na função boaNoite()'
    }
}

Arquivo: ModuloCliente.js
const moduloA = require('./ModuloA')
const moduloB = require('./ModuloB')

console.log(moduloA.ola);
console.log(moduloA.bemVindo);
console.log(moduloA.ateLogo);

console.log();
console.log(moduloB.bomDia);
console.log(moduloB.boaNoite());
console.log(moduloB);











Palavras chave:

JavaScript模塊
Модуль JavaScript
Modul JavaScript
JavaScript модулу
ЈаваСцрипт модул
وحدة JavaScript
JavaScriptモジュール
JavaScript-module
מודול JavaScript
Mòdul JavaScript

FlatMap em JavaScript

const escola = [{
    nome: 'Turma M1',
    alunos: [{
        nome: 'Gustavo',
        nota: 8.1
    },{
        nome: 'Ana',
        nota: 9.3
    }]
},{
    nome: 'Turma M2',
    alunos: [{
        nome: 'Rebeca',
        nota: 8.9
    },{
        nome: 'Roberto',
        nota: 7.5
    }]
}]

const getNotaDoAluno = aluno => aluno.nota
const getNotasDaTurma = turma => turma.alunos.map(getNotaDoAluno)

//extrai nota da turma
const notas1 = escola.map(getNotasDaTurma)

console.log(notas1);
console.log([].concat([8.1, 9.3], [8.9, 7.5]));

const notas2 = escola.flatMap(getNotasDaTurma);
console.log(notas2);







Concat em JavaScript

//Concat: Concatena vários arrays
const filhas = ['Daleska', 'Cibalena']
const filhos = ['Jairo', 'Gabriel']
const todos = filhas.concat(filhos)
console.log(todos);
const todos1 = filhas.concat(filhos, 'Henrique')
console.log(todos1);

console.log(todos, filhas, filhos);

console.log(['a', 'b'].concat([1,2], [3,4], 5, [[6,7]]));




Imperativo Vs Declarativo em JavaScript

const alunos = [
    {nome: 'João', nota: 7.3},
    {nome: 'Maria', nota: 9.2},
    {nome: 'Pedro', nota: 9.8},
    {nome: 'Gabriele', nota: 8.7}
]

//Imperativo
let total1 = 0
for(let i = 0; i < alunos.length; i++){
    total1 += alunos[i].nota
}
console.log(total1 / alunos.length);

//declarativo
const getNota = aluno => aluno.nota
const soma = (total, atual) => total + atual

const total2 = alunos.map(getNota).reduce(soma)
console.log(total2 / alunos.length);








Palavras chave:

JavaScript'te Zorunlu ve Beyan
Императивті Vs декларативті JavaScript
Imperatief vs verklarend in JavaScript
JavaScript에서 명령형 대 선언
Imperative Vs Deklaratywny w JavaScript
Privaloma Vs deklaracija „JavaScript“
הצהרת נגד ציווי ב- JavaScript
Імператив Vs Декларація у JavaScript
JavaScript дахь Imperative Vs тунхаглал

Reduce 03 em JavaScript

Reduce de forma manual em JavaScript


//Reduce de forma manual
Array.prototype.reduce2 = function(callback){
    let acumulador = this[0]
    const indiceInicial = valorInicial ? 0 : 1//se tiver setado será 0
    for(let i = 1; i < this.length; i++){
        //atribui no acumulador, o resultado do acumulador passa para acu
        acumulador = callback(acumulador, this[i], i, this)
    }
    return acumulador
}

const soma = (total, valor) => total + valor
const nums = [1,2,3,4,5,6]
console.log(nums.reduce(soma, 15));//soma 15 + nums
console.log(nums.reduce(soma));



Reduce 02 em JavaScript

//Desafio: Verificar se todos os alunos são bolsistas

const alunos = [
    {nome: 'João', nota: 7.3, bolsista: false},
    {nome: 'Maria', nota: 9.2, bolsista: true},
    {nome: 'Pedro', nota: 9.8, bolsista: false},
    {nome: 'Gabriele', nota: 8.7, bolsista: true}
]
console.log(alunos);
//todos os alunos são bolsistas
const todosBolsistas = (resultado, bolsista) => resultado && bolsista
console.log(alunos.map(a => a.bolsista));
console.log(alunos.map(a => a.bolsista).reduce(todosBolsistas));

//Algum aluno é bolsista
const algumBolsista = (resultado, bolsista) => resultado || bolsista
console.log(alunos.map(a => a.bolsista).reduce(algumBolsista));





Reduce 01 em JavaScript

const alunos = [
    {nome: 'João', nota: 7.3, bolsista: false},
    {nome: 'Maria', nota: 9.2, bolsista: true},
    {nome: 'Pedro', nota: 9.8, bolsista: false},
    {nome: 'Gabriele', nota: 8.7, bolsista: true}
]
//extrai de alunos apenas nota, retorna a.nota implicito, 
const resultado = alunos.map(a => a.nota).reduce(function(acumulador, atual){
    console.log(acumulador, '\t',atual);
    return acumulador + atual//soma todas as notas
})//},10) caso queira iniciar com 10
console.log('Resultado = '+resultado);