Skip to content

Instantly share code, notes, and snippets.

View bsshenrique's full-sized avatar

Henrique bsshenrique

  • Minas Gerais, Belo Hozizonte
  • 09:08 (UTC -03:00)
View GitHub Profile

Shallow Copy e Deep Copy

Cópia superficial e cópia profunda são dois assuntos presentes no cotidiano de programadores de linguagens como C e C++, mas que talvez não tenham tanta recorrência para os programadores JavaScript.

Shallow Copy
Em uma explicação rápida, a cópia superficial tem por objetivo copiar objetos fazendo com que propriedades primitivas de alto nível tenham referências diferentes.
Se algo primitivo for alterado no mais alto nível do objeto copiado não fará nenhuma diferença para a cópia.

Deep Copy
Ja a cópia profunda não mantém nenhum tipo de referência entre o objeto copiado e a sua cópia.
Em outras palavras, tanto para propriedades primitivas de alto nível, como para outros objetos aninhados, a referência nunca será a mesma.

@bsshenrique
bsshenrique / linux-ssh-config.md
Last active January 15, 2024 18:39
SSH Config

SSH Config

Uma dica simples para poupar tempo é o uso do ~/.ssh/config.

Administrar diversas chaves SSH manualmente é bastante trabalhoso e nada prático.
É aqui que o arquivo de configuração do SSH torna-se útil.

O primeiro passo é criar o arquivo.
mkdir ~/.ssh && touch ~/.ssh/config

@bsshenrique
bsshenrique / vscode-snippets.md
Created October 22, 2023 23:32
Snippets no VSCode

Snippets no VSCode

Snippets in Visual Studio Code podem aumentar significativamente a sua produtividade.
Veja um exemplo.

Considere a função:

// sum.js
export function sum(...params) {
  return params.reduce((p, c) => (+p || 0) + (+c || 0), 0)
}
@bsshenrique
bsshenrique / javascript-object-properties.md
Created September 25, 2023 01:10
Principais maneiras de obter as propriedades de um objeto

Principais maneiras de obter as propriedades de um objeto

Este é um breve resuminho demonstrando as principais formas de obter as propriedades de um objeto, algo bem simples mas com alguns detalhes bem legais.

Resumo

Característica Object.getOwnPropertyNames Object.keys for...in
Enumerável ☑️ ☑️ ☑️
!Enumerável ☑️ - -
Herança - - ☑️