Skip to content

Instantly share code, notes, and snippets.

View paulogesualdo's full-sized avatar

Paulo Gesualdo paulogesualdo

View GitHub Profile
@paulogesualdo
paulogesualdo / mocha-chai-test.spec.js
Last active August 18, 2022 12:46
mocha-chai-test
/* eslint-disable no-unused-expressions */
const chai = require('chai');
function documentoValido(ano) {
const hasNotArguments = !ano;
const isNotTypeNumber = typeof (ano) !== 'number';
const currentYear = new Date().getFullYear();
const isNotLessThanCurrentYear = ano < currentYear;
@paulogesualdo
paulogesualdo / factory.js
Last active August 18, 2022 12:45
Example of the Factory Design Pattern
// É possível atribuir um objeto a uma variável
let pessoa = {};
// O imprimir, será impresso apenas um objeto
console.log(`Pessoa antes de atribuições: `);
console.log(pessoa);
// É possível realizar atribuições a esse objeto
pessoa.nome = 'Paulo';
pessoa.sobrenome = 'Gesualdo';
@paulogesualdo
paulogesualdo / combinar-array-join-split.js
Last active August 18, 2022 12:47
Combinar Array com Join e Split
// Considerando um array de números
const arrayNumeros = [1, 2, 3, 4, 5];
console.log(arrayNumeros);
// É possível transformar um array em uma string, com os itens separados por vírgula
const stringNumeros = arrayNumeros.join();
console.log(stringNumeros);
// É possível personalizar o caracter separador
const stringNumeros2 = arrayNumeros.join('.');
@paulogesualdo
paulogesualdo / combinar-arrays-concat-spread.js
Created August 18, 2022 16:34
Combinar Arrays com Concat e Spread (...)
// Considerando dois arrays
const array1 = [1, 2];
const array2 = [3, 4];
// Uma das formas de combinar dois arrays é utilizando concat
const concat1 = array1.concat(array2);
console.log(concat1);
// É possível combiná-los utilizando também o operador spread (...)
const spread1 = [...array1, ...array2];
@paulogesualdo
paulogesualdo / constructor-function.js
Last active August 18, 2022 16:40
Utilização de função construtora para objetos (constructor function)
// É possível elaborar uma classe construtora
function Carro(marca, modelo) {
this.marca = marca,
this.modelo = modelo
};
let argo = new Carro('Fiat', 'Argo');
console.log(argo);
@paulogesualdo
paulogesualdo / cortar-array-slice.js
Created August 18, 2022 16:38
Cortar Arrays utilizando Slice
// Considerando um array
const arrayCompleto = ['Primeiro','Segundo','Terceiro', 'Quarto'];
console.log(arrayCompleto)
// É possível cortar o primeiro item utilizando slice
const arrayCortado = arrayCompleto.slice(1);
console.log(arrayCortado);
// Isso não modifica o array completo, como pode-se ver abaixo:
console.log(arrayCompleto);
@paulogesualdo
paulogesualdo / encontrar-array-indexOf-includes.js
Last active September 6, 2022 19:23
Encontrar dentro de um Array utilizando indexOf e includes
// Considerando um array
const arrayNumeros = [1, 2, 3, 4]
// É possível encontrar elementos utilizando indexOf
// Ele retorna o índice onde está o elemento no vetor
// Caso o não tenha sido encontrado, ele retorna -1
const elementoBuscado = 2;
@paulogesualdo
paulogesualdo / encontrar-array-objeto-arrow-function-find.js
Last active September 6, 2022 19:20
Encontrar dentro de um array de objetos utilizando arrow function
// Considerando um array de objetos (carros)
const carros = [
{marca: 'Fiat', modelo: 'Argo'},
{marca: 'Chevrolet', modelo: 'Onix'}
];
console.log(carros);
// [
@paulogesualdo
paulogesualdo / factory-function-constructor.js
Created August 18, 2022 16:59
Utilizar uma função Factory como construtora (factory function constructor)
// Considerando um objeto celular
const celularSamsung = {
marca: 'Samsung',
tamanhoTela: {
vertical: 155,
horizontal: 75
},
bateria: 5000,
ligar: function(){
console.log('Fazendo ligação de um Samsung...')
@paulogesualdo
paulogesualdo / igualdade-objetos.js
Created August 18, 2022 17:00
Verificar igualdade de objetos
// Considerando dois objetos criados a partir
// de uma função construtora
function criarCarro (marca, modelo) {
return {
marca,
modelo
};
};