recursal/MDN huggingface dataset:
Cabeçalho HTTP
==============

Um **Cabeçalho HTTP** é um campo de uma requisição ou resposta HTTP que passa informações adicionais, alterando ou melhorando a precisão da semântica da mensagem ou do corpo. Cabeçalhos são *case-insensitive*, iniciam-se no começo da linha e são seguidos imediamente por um `':'` e um valor dependendo do cabeçalho em si. O valor termina no próximo CRLF ou no fim da mensagem.

Tradicionalmente, cabeçalhos são classificados em categorias, apesar disso, essa classificação não faz mais parte de nenhuma especificação:

* General header: Cabeçalhos aplicados ambos em requisições e respostas mas sem nenhuma relação com os dados eventualmente transmitidos no corpo.
* Request header: Cabeçalhos contendo mais informação sobre o recurso a ser buscado ou sobre o cliente em si.
* Response header (en-US): Cabeçalhos com informação adicional sobre a resposta, como localização ou sobre o servidor em si (nome, versão etc.).
* Entity header: Cabeçalhos contendo mais informação sobre o corpo da entidade, como o tamanho do conteúdo ou o seu *MIME-type.*

Uma requisição básica com um cabeçalho:
```

GET /example.http HTTP/1.1
Host: example.com
```


Redirecionamentos possuem cabeçalhos mandatários (`Location`):
```

302 Found
Location: /NewPage.html
```


Um típicos conjunto de cabeçalhos:
```

304 Not Modified
Access-Control-Allow-Origin: *
Age: 2318192
Cache-Control: public, max-age=315360000
Connection: keep-alive
Date: Mon, 18 Jul 2016 16:06:00 GMT
Server: Apache
Vary: Accept-Encoding
Via: 1.1 3dc30c7222755f86e824b93feb8b5b8c.cloudfront.net (CloudFront)
X-Amz-Cf-Id: TOl0FEm6uI4fgLdrKJx0Vao5hpkKGZULYN2TWD2gAWLtr7vlNjTvZw==
X-Backend-Server: developer6.webapp.scl3.mozilla.com
X-Cache: Hit from cloudfront
X-Cache-Info: cached
```


1. Especificações
    1. Sintaxe dos cabeçalhos na especificação HTTP.
2. Referência Técnica
    1. Lista de todos os cabeçalhos HTTP
3. Glossário
    1. HTTP header
    2. General header
    3. Request header
    4. Response header (en-US)
    5. Entity header
    6. Forbidden header name
    7. Forbidden response header name
    8. CORS-safelisted request header (en-US)
    9. CORS-safelisted response header (en-US)
Conversão de Tipo
=================

**Conversão de Tipo** (ou *typecasting*) significa transferência de dados de um **tipo de dado** para o outro. A **conversão implícita** ocorre quando o compilador atribui automaticamente os **tipos de dados**, mas o código fonte também pode **explicitamente** exigir uma conversão de tipo. Por exemplo, dada a instrução `5+2.0`, o *float* `2.0` será implicitamente convertido para *integer*, mas dada a instrução `Number("0x11")`, a *string* "0x11" será explicitamente convertida para o número 17.

Aprender mais
-------------

### Conhecimento Geral

* Conversão de Tipos em Wikipedia
Internet
========

A Internet é a rede mundial de redes que utiliza o conjunto de protocolos da Internet (também chamado TCP/IP dos seus dois mais importantes protocolos).

Aprenda mais
------------

### Saiba mais sobre isso

* How the Internet works (Introdução para iniciantes)
OpenGL
======

**OpenGL** (**Open Graphics Library**) é uma API (*Application Programming Interface*) multiplataforma e multilíngue para renderizar gráficos vetoriais 2D e 3D. A API é normalmente usada para interagir com uma GPU (*Graphics Processing Unit*) para obter renderização acelerada por hardware.

Saiba mais
----------

### Conhecimento geral

* OpenGL em Wikipedia
JPEG
====

**JPEG** (*Joint Photographic Experts Group*) é um método de compreensão com perda geralmente usado para imagens digitais.

Saiba mais
----------

### Conhecimento geral

* JPEG na Wikipedia
Port
====

Porta

 Para um computador se conectar à rede mundial de computadores com um endereço de IP(Protocolo de internet - Internet Protocol),
 uma porta é um ponto terminal de comunicação.
 Portas são designadas por números, e abaixo são especificados 1024 portas que é associado por padrão com um protocolo específico.

 Por exemplo, a porta padrão para a HTTP (Protocolo de transferência de hiper texto - Hyper Text Transfer Protocol) é 80 e o
 padrão para o HTTPS (Protocolo de transferência de hiper texto Seguro - Hyper Text Transfer Protocol Secure) é 443,
 então um http servidor espera pelas requisições naquelas portas.Cada protocolo de internet está associado com uma porta padrão:
 SMTP(25), POP3(110), IMAP(143), IRC(194) e assim em diante.

Aprenda mais
------------

### Conhecimento geral

* Port no Wikipedia
Wrapper
=======

Em linguagens de programação, como o JavaScript, um wrapper é uma função destinada a chamar uma ou mais funções, às vezes diretamente por conveniência, e às vezes adaptá-las para fazer uma tarefa ligeiramente diferente no processo.

Por exemplo, as bibliotecas do SDK para AWS são exemplos de wrappers.

Aprender mais
-------------

### Conhecimento Geral

Wrapper function em Wikipedia
XHR (XMLHttpRequest)
====================

`XMLHttpRequest` (XHR) é uma API JavaScript para criar requisições AJAX. Os métodos desta API fornecem opções para enviar requisições entre o browser e o server.

Veja mais
---------

### Geral

* XMLHttpRequest on Wikipedia
* Synchronous vs. Asynchronous Communications
### Informações técnicas

* O objeto `XMLHttpRequest`.
* Veja como utilizar o XMLHttpRequest na documentação.
XHTML
=====

O HTML pode ser transferido através da internet para o navegador usando duas sintaxes: sintaxe HTML e sintaxe XML (en-US), também conhecido como XHTML.

HTML5 e HTML/XHTML
------------------

Ambas as sintaxes são definidas através do padrão HTML5. A escolha da sintaxe é dedicada ao tipo MIME, que é enviado no cabeçalho HTTP `Content-Type` . O tipo MIME para sintaxe HTML é `text/html`, e o tipo MIME para sintaxe XHTML é `aplication/xhtml+xml`.

O exemplo mostra um documento HTML e um XHTML incluindo os cabeçalhos relevantes do HTTP.

### Documento HTML


```html
<!-- Content-Type: text/html -->

<!doctype html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <title>HTML</title>
  </head>
  <body>
    <p>Eu sou um documento HTML</p>
  </body>
</html>
```

### Documento XHTML


```xml
<!-- Content-Type: application/xhtml+xml -->

<html xml:lang="en" xmlns="https://www.w3.org/1999/xhtml">
  <head>
    <title>XHTML</title>
  </head>
  <body>
    <p>Eu sou um documento XHTML</p>
  </body>
</html>
```

Tipo MIME contra DOCTYPE
------------------------

Antes do HTML5, as duas sintaxes eram definidas por duas especificações diferentes: HTML 4.01 e XHTML 1.0. O padrão XHTML1 afirma que você poderia usar XHTML declarando um DOCTYPE especial. Porém, isso nunca foi implementado por nenhum navegador,e tem sido trocado pelo padrão HTML5. **Se sua página é enviada como `text/html` você não pode usar XHTML**.

Observe que o tipo MIME deve ser declarado no `Content-Type` HTTP header. Se você apenas inseriu a meta tag no HTML como `<meta http-equiv=…>`, ele será ignorado e tratado como `text/html`.

Se você apresentar suas páginas `text/html` e acreditar que você está escrevendo XHTML, você poderá enfrentar vários problemas, tal como descritos nos seguintes artigos:

* No to XHTML um artigo excelente do Spartanicus
* Beware of XHTML por David Hammond
* Sending XHTML as text/html Considered Harmful por Ian Hickson
* XHTML's Dirty Little Secret por Mark Pilgrim
* XHTML - What's the Point? por Henri Sivonen
* XHTML is not for Beginners por Lachlan Hunt
Suporte
-------

O XHTML é suportado pela maioria dos navegadores modernos, incluindo Firefox, Chrome, Safari, e Opera. Entretanto, o Internet Explorer suporta XHTML somente a partir da versão 9. O Internet Explorer 8 e suas versões mais antigas mostrarão uma mensagem de tipo de arquivo desconhecido quando aberto um documento XHTML com o tipo XHTML MIME correto.

Também é bom observar que muitas bibliotecas populars de JavaScript e ferramentas para desenvolvedores não suportam XHTML ou tem suporte limitado.

Diferenças entre HTML
---------------------

Veja Properly Using CSS and JavaScript in XHTML Documents para uma lista com algumas das diferenças entre HTML e XHTML.

Ferramentas
-----------

* Standards-Compliant Authoring Tools
Veja também
-----------

* HTML
* Namespaces
Adobe Flash
===========

Flash é uma tecnologia obsolescente desenvolvida pela Adobe que possibilita aplicativos Web, gráficos de vetor e multimídia. Você precisa instalar o plugin certo para usar o Flash dentro de um navegador web.

Saiba mais
----------

### Conhecimento geral

* Official web site
* Shumway, a free implementation by Mozilla
* Gnash, a free implementation by GNU
PHP
===

PHP (um inicialismo recursivo para PHP: Hypertext Preprocessor) é uma linguagem de script do lado do servidor de código aberto que pode ser utilizada junto com HTML para construir aplicações web e sites dinâmicos.

HTML pode ser usando dentro do PHP, mas não vice versa.
```

 // Sintaxe básica do PHP
<? php
 // Imprime dados na tela
 echo "Olá mundo!";

 // ou
 print "Olá mundo!";
?>
```


A melhor coisa em usar o PHP é que ele é extremamente simples para um iniciante, mas oferece muitos recursos avançados para um programador profissional. Não tenha medo de ler a longa lista de recursos do PHP. Pode entrar com tudo, o mais rápido que puder, e começar a escrever scripts simples em poucas horas.

### Variáveis em PHP
```

<?php
 // Variáveis
 $nome='Jorge';
 $sobrenome='Clésio';
 $pais='Brasil';
 $email='jorgeclesio@mozilla.org';

 // Imprimir variáveis
 echo $nome;
 echo $sobrenome;
 echo $pais;
 echo $email;
?>
```


Conheça mais sobre variáveis em PHP

### Tratando Formulários com PHP

Confira aqui.

Saber mais
----------

* Website oficial
* PHP na Wikipedia
* PHP no Wikilivros
* Introdução ao PHP W3Schools
DOM
===

O Modelo de Objeto de Documentos (do inglês **Document Object Model, DOM**) é uma API definida pelo W3C para representar e interagir com qualquer documento HTML ou XML.

O *DOM* é um modelo de documento carregado pelo navegador. Este documento é representado através de uma árvore de nós, onde cada um destes nós representa uma parte do documento (por ex. um elemento, texto ou comentário).

 O *DOM* é uma das APIs mais usadas na Web (en-US) porque ele permite que cada código rodando no navegador acesse e interaja com cada nó do documento.
 Os nós podem ser criados, movidos ou modificados. *Listeners* de evento podem também ser adicionados aos nós para serem disparados quando um dado evento ocorrer.

 O *DOM* não foi originalmente especificado. Ele apareceu quando os navegadores começaram a implementar o JavaScript. Este legado é às vezes chamado de *DOM 0*.
 Hoje o W3C conduz a especificação do *DOM*; e o DOM Working Group está atualmente preparando a versão 4.

Saiba mais
----------

### Conhecimentos Gerais

* DOM
### Referência Técnica

* A Documentação DOM no MDN (en-US)
* As várias especificações do DOM no W3C
WebP
====

**WebP** é um formato de compressão de imagem lossless e lossy desenvolvido pelo Google.

Saiba mais
----------

### Conhecimentos gerais

* WebP na Wikipedia
Nome de domínio
===============

Um nome de domínio é um endereço de uma página na Internet. Nomes de domínios são usados em URLs para identificar a qual servidor uma página específica pertence. O domínio consiste de uma sequência hierárquica de nomes (rótulo) separados por períodos (pontos) e terminando com uma extensão (en-US).

Saiba mais
----------

### Conhecimento geral

* Domínio na Wikipedia
* Understanding domain names
UX
==

**UX** é um acrônimo que significa experiência do usuário (User eXperience). É o estudo da interação entre usuários e um sistema. Seu objetivo é tornar um sistema fácil de interagir do ponto de vista do usuário.

O sistema pode ser qualquer produto ou aplicativo com o qual um usuário final deve interagir. Os estudos de UX realizados em uma página da web podem demostrar, por exemplo, se é fácil para os usuários entenderem a página, navegarem para diferentes áreas e concluírem tarefas comuns, e onde tais processos poderiam ter menos fricção.

Saber mais
----------

### Conhecimento geral

* Experiência do Usuário na Wikipédia
Tag
===

Em HTML a tag é usada para criar um elemento. O **nome** de um elemento HTML é o nome usado entre colchetes angulares como "<p>" para criar parágrafos. Note que ao fechar uma tag ela tem uma barra antes de seu nome, "</p>" , e que em elementos vazios a tag final não é requirida e nem permitida. Se os atributos não forem mencionados, os valores padrões serão usados em cada caso.

Aprenda mais
------------

### Conhecimentos gerais

* HTML element no Wikipedia (em inglês)
* Tags de HTML no W3 (em inglês)
### Referência técnica

* Introdução ao HTML (em inglês)
Global object
=============

Um objeto global é um objeto que sempre está definido no escopo global.

Em JavaScript, um objeto global é sempre definido. No browser, quando scripts criam variáveis globais, elas são criadas como membros desse objeto global (Em Node.js isso não se aplica). A interface do objeto global depende do contexto de execução no qual o script está sendo executado. Por exemplo:

* Num navegador, qualquer código que o script não inicie especificamente como uma tarefa em background, tem um `Window` como seu objeto global. Isto se aplica para a vasta maioria dos códigos JavaScript na Web.
* Códigos rodando num `Worker` tem um objeto `WorkerGlobalScope` (en-US) como seu objeto global.
* Scripts que executam no Node.js tem um objeto `global` como seu objeto global.
Truthy
======

Em JavaScript, um valor **truthy** é um valor que se traduz em verdadeiro quando avaliado em um contexto Booleano. Todos os valores são **truthy** a menos que eles sejam definidos como falsy (ou seja., exceto para `false`, `0`, `""`, `null`, `undefined`, e `NaN`).

O JavaScript usa coerção de tipo em contextos booleanos.

Exemplos de valores *truthy* em JavaScript (que se traduzirão em true, e então executar o bloco `if`):
```

if (true)
if ({})
if ([])
if (42)
if ("foo")
if (new Date())
if (-42)
if (3.14)
if (-3.14)
if (Infinity)
if (-Infinity)
```

Veja também
-----------

* Falsy
* Coercion
* Boolean
Advance measure
===============

A **advance measure** é o espaço total que o glyph ocupa, horizontal ou verticalmente, dependendo da direção de escrita atual. É igual à distância percorrida pelo cursor, colocado diretamente na frente e depois deslocado para trás do caractere.

Este termo é usado na definição de um número de unidades CSS `<length>` (en-US). A *advanced measure* da unidade `ch` é a largura ou a altura do caractere "0" no tipo de letra fornecido, dependendo se o eixo horizontal ou vertical está sendo usado no momento. Uma *advanced measure* de unidade `ic` é a largura ou altura do caractere "水".

Veja também
-----------

* `<length>` (en-US)
Self-Executing Anonymous Function
=================================

(Self-Executing Anonymous Function) é uma função JavaScript que é executada assim que definida. Ela também é conhecida como **IIFE** (Immediately Invoked Function Expression).

Veja a página IIFE para mais informações.
Declaração
==========

Em uma linguagem de programação, uma **declaração** é uma linha de código que dá comando para execução de uma tarefa. Cada programa é composto por uma sequência de declarações.

Aprenda mais
------------

### Conhecimento geral

* Declaração na Wikipedia
### Referencia técnica

* JavaScript declarações
BigInt
======

No JavaScript, **BigInt** é um tipo de dado numérico que representa inteiros no formato de precisão arbritrária. Em outras linguagens de programação existem tipos numéricos diferentes, como por exemplo: Integers, Floats, Doubles ou Bignums.

Saiba mais
----------

### General knowledge

* Numeric types no Wikipedia
### Technical reference

* The JavaScript data structure: BigInt
* The JavaScript global object `BigInt`
Grade
=====

Uma *grade no CSS* é definida usando o valor `grid` da propriedade `display`; você pode definir colunas e linhas na sua grade usando as propridades `grid-template-rows` e `grid-template-columns`.

A grade que você define usando essas propriedades é descrita como uma *grade explícita*.

Se você colocar o conteúdo fora dessa grade explícita ou se estiver utilizando o posicionamento automático e o algoritmo da grade precisar criar linhas ou colunas adicionais tracks (en-US) para manter grid items, então serão criadas faixas extras na grade implícita. A *grade implícita* é a grade criada automaticamente devido ao conteúdo adicionado fora das faixas definidas.

No exemplo abaixo, criamos uma *grade explícita* de três colunas e duas linhas. A terceira linha da grade é uma *faixa implícita de linha da grade*, formada por serem mais do que os seis os itens que preenchem as faixas explícitas.
```

\* {
  box-sizing: border-box;
}

.wrapper {
  border: 2px solid #f76707;
  border-radius: 5px;
  background-color: #fff4e6;
}

.wrapper > div {
  border: 2px solid #ffa94d;
  border-radius: 5px;
  background-color: #ffd8a8;
  padding: 1em;
  color: #d9480f;
}
```



```css
.wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: 100px 100px;
}
```



```html
<div class="wrapper">
  <div>Um</div>
  <div>dois</div>
  <div>três</div>
  <div>quatro</div>
  <div>cinco</div>
  <div>seis</div>
  <div>sete</div>
  <div>oito</div>
</div>
```


1. CSS Grid Layout Guide:
 *Basic concepts of grid layout*
2. Property reference
    1. `grid-template-columns`
    2. `grid-template-rows`
    3. `grid`
    4. `grid-template` (en-US)
JavaScript
==========

Sumário
-------

JavaScript (ou "JS") é uma linguagem de programação utilizada principalmente para scripts dinâmicos do lado do cliente em páginas web, podendo também ser utilizada no lado do servidor, usando um interpretador (em inglês: *runtime*) como o Node.js.

O JavaScript **não deve** ser confundido com a linguagem de programação Java. Apesar de *"Java"* e *"JavaScript"* serem marcas comerciais (ou marcas registradas) da Oracle nos EUA e em outros países, essas duas linguagens de programação são significativamente diferentes em sintaxe, semântica e casos de uso.

O JavaScript é utilizado principalmente no navegador, permitindo que os desenvolvedores manipulem o conteúdo de uma página web por meio do DOM, manipulem dados com o AJAX e o IndexedDB, desenhem gráficos com o canvas (en-US), interajam com o dispositivo que está executando o navegador através de várias APIs e muito mais. JavaScript é uma das linguagens mais utilizadas no mundo, devido ao recente crescimento e melhoria de desempenho das APIs disponíveis nos navegadores.

Origem e História
-----------------

Concebido como uma linguagem do lado do servidor por Brendan Eich (então empregado pela Netscape Corporation), o JavaScript logo chegou ao Netscape Navigator 2.0 em setembro de 1995. O JavaScript obteve sucesso imediato e o Internet Explorer 3.0 (en-US) introduziu o suporte ao JavaScript sob o nome JScript em agosto de 1996.

 Em novembro de 1996, a Netscape começou a trabalhar com a ECMA International para tornar o JavaScript um padrão do setor. Desde então, o JavaScript padronizado é chamado de
 ECMAScript e especificado sob a ECMA-262, cuja última edição (décima primeira, ES2020) está disponível desde junho de 2020.

Recentemente, a popularidade do JavaScript se expandiu ainda mais através do bem-sucedido Node.js, o interpretador multiplataforma mais popular de ambiente de execução JavaScript fora do navegador. Node.js foi criado utilizando o V8 Javascript Engine permitindo que os desenvolvedores utilizem o JavaScript como linguagem de script para automatizar as coisas em um PC e criar servidores HTTP e WebSocket (en-US) totalmente funcionais.

Aprenda mais
------------

### Conhecimento geral

* JavaScript no Wikipédia
### Aprendendo JavaScript

* Guia JavaScript no MDN
* Workshop de JavaScript na NodeSchool
* Curso em vídeo de JavaScript para iniciantes
* Série "You Don't Know JS" - parcialmente traduzida para português
* Conceitos que todo desenvolvedor JavaScript deveria saber na Udemy - nível intermediário
* "Learn JavaScript" na codecademy.com
### Referência técnica

* Últimas padronizações do ECMAScript
* [Referência JavaScript](/pt-BR/docs/Web/JavaScript/reference) no MDN
* Eloquent JavaScript Segunda Edição
Pseudo-class
============

No CSS, um seletor do tipo **pseudo-classe** referencia um elemento dependendo do seu estado e não de informações da arvore do documento. Por exemplo, o seletor a`:visited` aplica estilo somente aos links que o usuário já visitou

Saiba mais
----------

### Referencia técnica

* Documentação de pseudo-class
HTTPS
=====

**HTTPS** (*HTTP Secure*) é uma versão do protocolo HTTP criptografado. É normalmente usado SSL (en-US) ou TLS para criptografar toda a comunicação entre um cliente e um servidor. Essa conexão segura permite aos clientes trocar com segurança dados confidenciais com o servidor, por exemplo, para atividades bancárias ou compras online.

Saiba mais
----------

### Conhecimento geral

* HTTPS na Wikipedia
SEO - Otimização dos Mecanismos de Buscas
=========================================

**SEO** (Search Engine Optimization - Otimização dos Mecanismos de Pesquisa) é o processo de fazer com que um sítio fique mais visível nos resultados da procura, também denominado melhoramento na classificação da busca.

Os mecanismos de pesquisa crawl (en-US) vasculham a *web* seguindo vínculos de uma página para outra (*link*) e listando os resultados encontrados. Quando se faz uma busca, o mecanismo de pesquisa exibe o conteúdo classificado. Os rastreadores seguem regras. Se você seguir essas regras, metodicamente, ao fazer uma SEO para um sítio, existirão melhores chances de que o mesmo apareça entre os primeiros resultados, aumentando o tráfego e as possibilidades de rendimentos (pelo comércio eletrônico e publicidade).

Os motores de busca oferecem algumas diretrizes para SEO, mas os maiores deles mantém a classificação de resultados como um segredo comercial. A otimização - SEO - é uma combinação de orientações oficiais do mecanismo de pesquisa, conhecimento prático, entendimento de artigos científicos, ou patentes.

Os métodos SEO dividem-se em três grandes classes:

técnico

Rotular o conteúdo usando semântica HTML. Ao explorar os sítios da *web* os rastreadores devem encontrar, apenas, o conteúdo que você quer indexado.

autoria

Escrever conteúdos utilizando o vocabulário dos visitantes. Empregar texto e imagens de forma que os rastreadores possam entender do que se trata.

popularidade

Você consegue muito mais tráfego quando existem vínculos com outros sítios famosos.

Aprenda mais
------------

### Conhecimento Geral

* SEO na Wikipedia
### Aprenda SEO

* Central *Webmaster* Google
Propriedade (CSS)
=================

Uma **propriedade CSS** é uma característica (como a cor) cujo valor define o aspecto de como o navegador deve exibir o elemento.

Aqui está um exemplo de uma regra do CSS:


```css
/\* "div" é um seletor indicando que todos os elementos div \*/
/\* no documento serão estilizados por essa regra \*/
div {
  /\* A propriedade "color" (cor) com o valor "black" (preto) indica que \*/
  /\* todos os textos terão a cor preta \*/
  color: black;

  /\* A propredade "background-color" (cor de fundo) com o valor "white" \*/
  /\* (branco) indica que a cor de fundo dos elementos será branca \*/
  background-color: white;
}
```

Saiba Mais
----------

### Conhecimentos Gerais

* Aprenda CSS
### Referências Técnicas

* A referencia sobre CSS no MDN
* The CSS Working Group current work
Propriedade (JavaScript)
========================

Uma **propriedade Javascript** é uma característica de um objeto, frequentemente descrita como atributos associados à uma estrutura de dados.

Há dois tipos de propriedades:

* *Propriedades de instâncias* que contém informação específica para dada instância de objeto, e
* *Propriedades estáticas* que contém informação compartilhada com todas as instâncias de objetos.

Uma propriedade tem nome (uma string) e um valor (primitivo, método (en-US) ou uma referência a um objeto (en-US)). Perceba que quando dizemos que "uma propriedade contém um objeto", é apenas um atalho para "uma propriedade contém uma *referência* a um objeto". Essa distinção é importante porque o objeto referenciado original continua inalterado quando você altera o valor da propriedade.

Saiba mais
----------

### Conhecimento geral

* Property (programming) on Wikipedia
* Introdução a objetos em JavaScript