Pesquisar neste blog

21/07/2020

Passando parâmetros com node em JavaScript

Arquivo: PassandoParametro.js

module.exports = function(...nomes){
    return nomes.map(nome => `Boa semana ${nome} !`)
}


Arquivo: PassandoCliente.js
//Exportando para uma função e adicionando
const saudacoes = require('./PassandoParametro')('Ana''Lucas''Karolayne')
console.log(saudacoes);



This em JavaScript

console.log(this === global);
console.log(this === module);
console.log(this === module.exports);
console.log(this === exports);//fora de 1 função o this aponta para exports

function logThis() {
    console.log('Dentro de uma uma função ...');
    //this não aponta para exports
    console.log(this === exports);//this é extritamente igual a exports ?
    console.log(this === module.exports);//this é extri... 
    console.log(this === global);
    console.log(this == global);
}
logThis()


Objeto global com node em JavaScript

Arquivo: Global.js

//console.log();
global.MinhaApp1 = {
    saudacao(){
        return 'Estou em todos lugares !'
    },
    nome'Sistema Legal'
}

global.MinhaApp2 = Object.freeze[{//Objeto está congelado
    saudacao2() {
        return 'Estou congelado !'
    },
    nome2"Sistema congelado em JavaScript !"
}]

Arquivo: GlobalCliente.js

require('./Global')
console.log(MinhaApp1.saudacao());

//Método 2
MinhaApp1.nome = 'Letícia'
console.log(MinhaApp1.nome);

//acessar objeto congelado, forma errada de acessar
//MinhaApp2.nome2 = 'Camila'//Erro: está congelado
//console.log(MinhaApp2.nome2); Erro








Palavras chave:

Globales Objekt mit Knoten in JavaScript
JavaScriptのノードを持つグローバルオブジェクト
გლობალური ობიექტი კვანძით JavaScript- ში
జావాస్క్రిప్ట్‌లో నోడ్‌తో గ్లోబల్ ఆబ్జెక్ట్
อ็อบเจ็กต์โกลบอลที่มีโหนดใน JavaScript
Ughjettu globale cù node in JavaScript
JavaScript-тегі түйінді жаһандық нысан
Globalt objekt med knude i JavaScript

Módulo exports em JavaScript

Arquivo: Arquivo1.js

console.log(module.exports);
console.log(module.exports === this);//está exportando ?
console.log(module.exports === exports);

this.a = 1
exports.b = 2
module.exports.c = 3

exports = null
console.log(module.exports);

exports = {
    nome'Bem vindo ao JavaScript',
}

console.log(module.exports);

module.exports = {
    publico: true
}


Arquivo: exportar.js
const exportar = require('./Arquivo1')//importando arquivo
console.log(exportar);











Palavras chave:

Mòdul d'exportacions de JavaScript
מודול יצוא JavaScript
Modulo di esportazione JavaScript
โมดูลส่งออก JavaScript
ജാവാസ്ക്രിപ്റ്റ് എക്‌സ്‌പോർട്ട് മൊഡ്യൂൾ
Module d'exportations JavaScript
Mòdul d'exportacions de JavaScript
JavaScript ექსპორტის მოდული
JavaScriptエクスポートモジュール
JavaScript-Exportmodul

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',
        nota8.1
    },{
        nome'Ana',
        nota9.3
    }]
},{
    nome'Turma M2',
    alunos: [{
        nome'Rebeca',
        nota8.9
    },{
        nome'Roberto',
        nota7.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.19.3], [8.97.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'nota7.3},
    {nome'Maria'nota9.2},
    {nome'Pedro'nota9.8},
    {nome'Gabriele'nota8.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(soma15));//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'nota7.3bolsista: false},
    {nome'Maria'nota9.2bolsista: true},
    {nome'Pedro'nota9.8bolsista: false},
    {nome'Gabriele'nota8.7bolsista: 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.3bolsista: false},
    {nome: 'Maria'nota: 9.2bolsista: true},
    {nome: 'Pedro'nota: 9.8bolsista: false},
    {nome: 'Gabriele'nota: 8.7bolsista: true}
]
//extrai de alunos apenas nota, retorna a.nota implicito, 
const resultado = alunos.map(a => a.nota).reduce(function(acumuladoratual){
    console.log(acumulador'\t',atual);
    return acumulador + atual//soma todas as notas
})//},10) caso queira iniciar com 10
console.log('Resultado = '+resultado);


19/07/2020

Filter 02 em JavaScript


Filter: É um método de filtrar um Array
Exemplo: 
  • filtrar um Array com pessoas em débito em 1 empresa, funcionário, etc
  • filtrar um Array para procurar valores
//Método de filtragem manual, versão simples
Array.prototype.filter2 = function(callback) {
    const newArray = []
    for (let i = 0i < this.lengthi++) {//passando os elementos
        //se for verdadeiro, adiciona
        if(callback(this[i], ithis)) {//passa o indice, , array
            newArray.push(this[i])//
        }
    }
    return newArray
}

const produtos = [
    { nome: 'Notebook'preco: 2499fragil: true },
    { nome: 'iPad Pro'preco: 4199fragil: true },
    { nome: 'Copo de Vidro'preco: 12.49fragil: true },
    { nome: 'Copo de Plástico'preco: 18.99fragil: false }
]

const caro = produto => produto.preco >= 500
const fragil = produto => produto.fragil

console.log(produtos.filter2(caro).filter2(fragil))






Filter 01 em JavaScript


Filter: É um método de filtrar um Array
Exemplo: 
  • filtrar um Array com pessoas em débito em 1 empresa, funcionário, etc
  • filtrar um Array para procurar valores 
const produtos = [
    {nome: 'Notebook'preco: 2499fragil: true},//1° elemento
    {nome: 'iPad'preco: 4250fragil: true},
    {nome: 'Copo de Vidro'preco: 12.49fragil: true},
    {nome: 'Copo de Plástico'preco: 18.99fragil: false}
]

console.log(produtos.filter(function(p){
    return true//filtra tudo, não fez exceção de nada
}));
console.log();

console.log(produtos.filter(function(p){
    return p.preco > 2400//retorna todos elemento do array maior que 2400
}));
console.log();

console.log(produtos.filter(function(p){
    return false//filtra nada
}));
console.log();

const caro = produto => produto.preco >= 500
const fragil = produto => produto.fragil
console.log(produtos.filter(caro).filter(fragil));






Map 03 em JavaScript

//map2 implementado nas mãos
Array.prototype.map2 = function(callback){
    const newArray = []
    for (let i = 0i < this.lengthi++) {
        newArray.push(callback(this[i], ithis))
    }
}


const carrinho = [
    '{ "nome": "Borracha", "preco": 3.45 }',
    '{ "nome": "Caderno", "preco": 13.90 }',
    '{ "nome": "Kit de Lapis", "preco": 41.22 }',
    '{ "nome": "Caneta", "preco": 7.50 }'
]
//Retornar um array apenas com os preços
const paraObjeto = json => JSON.parse(json);//converte um texto para objeto
const apenasPreco = produto => produto.preco//retorna produto.preco

const resultado = carrinho.map(paraObjeto).map(apenasPreco)
console.log(resultado);




Map 02 em JavaScript

//Desafio pegar apenas os preços do Array
const carrinho = [
    '{ "nome": "Borracha", "preco": 3.45 }',
    '{ "nome": "Caderno", "preco": 13.90 }',
    '{ "nome": "Kit de Lapis", "preco": 41.22 }',
    '{ "nome": "Caneta", "preco": 7.50 }'
]
//Retornar um array apenas com os preços
const paraObjeto = json => JSON.parse(json);//converte um texto para objeto
const apenasPreco = produto => produto.preco//retorna produto.preco

const resultado = carrinho.map(paraObjeto).map(apenasPreco)
console.log(resultado);



Map 01 em JavaScript

//gerar um array  do dobro
const num = [12345]

//for com protótipo
let resultado = num.map(function(e){
    return e * 2
})  
console.log(num);
console.log(resultado);

const soma10 = e => e + 10
const triplo = e => e * 3
//numero flutuante, 2 casas decimais, substitui . por ,
const paraDinheiro = e => `R$ ${parseFloat(e).toFixed(2).replace('.',',')}`

//forma encadeada, chama 1 map de pois outros
resultado = num.map(soma10).map(triplo).map(paraDinheiro)
console.log(resultado);




ForEach 02 em JavaScript

Array.prototype.forEach1 = function(callback){
    for(let i = 0i < this.lengthi++){//percorrendo os índices
        callback(this[i], ithis)//valor, indice, arraycompleto
    }
}

const aprovados = ['Agatha''Juliane''Ana Paula','Raquel']

aprovados.forEach1(function(nomeindice){//acessando forEach1
    console.log(`${indice + 1}${nome}`);
})





ForEach 01 em JavaScript

const aprovados = ['Agatha''Naldo''Juliane''Ana Paula','Raquel']

//método 1
aprovados.forEach(function(nomeindice){
    console.log(`${indice + 1}${nome}`);
})
console.log();//pulando 1 linha na impressão

//método 2
aprovados.forEach(nome => console.log(nome));
console.log();

//método 3
const exibirAprovados = aprovado => console.log(aprovado);
aprovados.forEach(exibirAprovados);
console.log();

//Método 4, imprimindo em ordem crescente
aprovados.sort().forEach(function(nomeindice){
    console.log(`${indice +1}${nome}`);
})


























Palavras chave:

ForEach 01 u JavaScript-u
JavaScript의 ForEach 01
ForEach 01 i JavaScript
በጃቫ ስክሪፕት ውስጥ 01 አንሸርስ
ForEach 01 ב- JavaScript
ForEach 01 JavaScript-те
JavaScript'te ForEach 01

Array com Objetos em JavaScript

const quaseArray = {0: 'Henrique'1: 'Karolayne'2: 'Bia'}
console.log(quaseArray);
Object.defineProperty(quaseArray'toString',{
    value: function (){
        return Object.value(this)//vai imprimi os valores do objeto referenciando o objeto atual
    },
    enumerable: false
})
console.log(quaseArray[0]);

const meuArray = ['Rafael''Ana''Bia']
console.log(meuArray);
console.log(meuArray.toString());









Palavras chave:

JavaScript ഒബ്‌ജക്റ്റുകൾ ഉപയോഗിച്ച് അറേ ചെയ്യുക
Matriu amb objectes JavaScript
Array with JavaScript Objects
Sed ea ordinata per JavaScript
Массив с объектами JavaScript
Масив з об’єктами JavaScript
Array med JavaScript-objekt
JavaScript 객체로 배열
Niz s JavaScript objektima

Array e métodos importantes em JavaScript

//não pode atribuir nada em pilotos por ser 1 constante
const pilotos = ['Vettel''Alonso''Mickael','Raikenen']
pilotos.pop()//desempilha ultimo elemento 'Raikenen'
console.log(pilotos);

pilotos.push('Verstappen')//adicionou(empilhou) elemento
console.log(pilotos);

pilotos.shift()//remove 1° elemento da posição
console.log(pilotos);

pilotos.unshift('Hamilton')//adc na 1° posição
console.log(pilotos);

//splice pode adicionar e remover elementos
pilotos.splice(20'Bottas''Massa')
console.log();
console.log(pilotos);
pilotos.splice(3,1)//remove 1 elemento a partir da posição 3
console.log(pilotos);
console.log();

const algunsPilotos1 = pilotos.slice(2)//novo array a partir de outro
console.log(algunsPilotos1);

const algunsPilotos2 = pilotos.splice(14)//a partir da pos 1, 4 elementos
console.log(algunsPilotos2);













Palavras chave:

Важне ЈаваСцрипт матрице и методе
מערך ושיטות JavaScript חשובים
อาร์เรย์และวิธีการที่สำคัญของ JavaScript
Ważna tablica i metody JavaScript
Važne JavaScript matrice i metode
Важные JavaScript-массив и методы
Important JavaScript Array and Methods
Маанилүү JavaScript массиви жана методдору
Matèries i mètodes de JavaScript importants

Array em JavaScript


splice, adicionar e empilhar elementos em Array no JavaScript

console.log(typeof Arraytypeof new Arraytypeof []);

let aprovados = new Array('Bia''Carlos''Ana')
console.log(aprovados);

aprovados = ['Bia''Carlos''Ana']
console.log(aprovados[0]);//posição 0
console.log(aprovados[4]);//posição não corresponde

console.log();
aprovados[3] = 'Henrique'
aprovados.push('Karolayne')//adiciona na ultima posição
console.log(aprovados);
console.log('Tamanho do array = '+aprovados.length);

console.log();
aprovados[9] = 'Rafael'
console.log(aprovados);
console.log(aprovados[8] === undefined);//posição 8 é indefinida ?

console.log();
aprovados.sort()//ordena o array por ordem alfabética
console.log(aprovados);

delete aprovados[1]
console.log(aprovados[1], aprovados);
console.log();

nomes = ['Bia''Carlos''Ana''Juliane''Kamila''Nayara''Evelyn']
nomes.splice(1,2)//exclui 2 elementos a partir do índice 1(Calos)
console.log(nomes);
//exclui 1 elementos a partir do indice 2 e adiciona os elementos 1 e 2
nomes.splice(21'Elemento1''Elemento2')
console.log(nomes);




Classes + herança em JavaScript

//Classe + herança
class Avo{//classe  avo
    constructor(sobrenome){//função construtora, parametro sobrenome
        this.sobrenome = sobrenome
    }
}

class Pai extends Avo{//Pai extende Avo, prototipo de outra classe Avo
    constructor(sobrenomeprofissao = 'Professor'){
        super(sobrenome)//chama o construtor da super classe
        this.profisscao = profissao//atribui profissão ao objeto que foi instanciado
    }
}

class Filho extends Pai{
    constructor(){
        super('Silva')//Sobrenome do Pai
    }
}

const filho = new Filho
console.log(filho);







Palavras chave:

Klassen + Vererbung in JavaScript
Классы + наследование в JavaScript
Clase + moștenire în JavaScript
คลาส + การสืบทอดใน JavaScript
שיעורים + ירושה ב- JavaScript
Класе + наслеђивање у ЈаваСцрипт-у

JSON vs Objeto em JavaScript

//JSON é um formato de dados, formato de interoterabilidade
//formato textual que carrega consigo
const obj = {a: 1b: 2c: 3
    soma(){
        return a + b + c
    }
}
console.log(JSON.stringify(obj));//passa um objeto e transforma em JSON
//console.log(JSON.parse("{a: 1', 'b: 2', 'c: 3}"));//vai dar erro, formato inválido
//console.log(JSON.parse("{'a: 1', 'b: 2', 'c: 3' }"));//vai dar erro, todos os formatos JSON deve estar habilitado com aspas duplas
console.log(JSON.parse('{ "a":1, "b":2, "c":3 }'));
console.log(JSON.parse('{"a": 1.77, "b": "string", "c": true, "d": {}, "e": [] }'));//permite arrays também