diff options
| author | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:42:52 -0500 |
|---|---|---|
| committer | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:42:52 -0500 |
| commit | 074785cea106179cb3305637055ab0a009ca74f2 (patch) | |
| tree | e6ae371cccd642aa2b67f39752a2cdf1fd4eb040 /files/pt-br/web/javascript/reference/global_objects/weakmap | |
| parent | da78a9e329e272dedb2400b79a3bdeebff387d47 (diff) | |
| download | translated-content-074785cea106179cb3305637055ab0a009ca74f2.tar.gz translated-content-074785cea106179cb3305637055ab0a009ca74f2.tar.bz2 translated-content-074785cea106179cb3305637055ab0a009ca74f2.zip | |
initial commit
Diffstat (limited to 'files/pt-br/web/javascript/reference/global_objects/weakmap')
6 files changed, 556 insertions, 0 deletions
diff --git a/files/pt-br/web/javascript/reference/global_objects/weakmap/delete/index.html b/files/pt-br/web/javascript/reference/global_objects/weakmap/delete/index.html new file mode 100644 index 0000000000..0a0d096c13 --- /dev/null +++ b/files/pt-br/web/javascript/reference/global_objects/weakmap/delete/index.html @@ -0,0 +1,73 @@ +--- +title: WeakMap.prototype.delete() +slug: Web/JavaScript/Reference/Global_Objects/WeakMap/delete +translation_of: Web/JavaScript/Reference/Global_Objects/WeakMap/delete +--- +<div>{{JSRef}}</div> + +<p>O método <code><strong>delete()</strong></code> remover o elemento especificado ou setado a partir de um objeto instanciado do <code>WeakMap</code>.</p> + +<div>{{EmbedInteractiveExample("pages/js/weakmap-prototype-delete.html")}}</div> + + + +<h2 id="Sintaxe">Sintaxe</h2> + +<pre class="syntaxbox"><code><em>wm</em>.delete(key);</code></pre> + +<h3 id="Parâmetros">Parâmetros</h3> + +<dl> + <dt>chave(key)</dt> + <dd>Requerido. A chave(<code>key</code>) do elemento a ser removido do objeto instanciado do <code>WeakMap</code>.</dd> +</dl> + +<h3 id="Valores_retornados">Valores retornados</h3> + +<p><code>true</code> se o emento do objeto do <code>WeakMap</code> tenha sido removido com sucesso. <code>false</code> se a chave(<code>key</code>) não for encontrada no <code>WeakMap</code> ou se a chave(<font face="consolas, Liberation Mono, courier, monospace"><span style="background-color: rgba(220, 220, 220, 0.5);">key</span></font>) não for um objeto.</p> + +<h2 id="Examplos">Examplos</h2> + +<h3 id="Usando_o_método_delete">Usando o método <code>delete</code> </h3> + +<pre class="brush: js;highlight:[4]">var wm = new WeakMap(); +wm.set(window, 'foo'); + +console.log(wm.delete(window)); // Returna true. Removido com sucesso. + +wm.has(window); // Returna false. O objeto window não é mais pertecente ao WeakMap. +</pre> + +<h2 id="Especificações">Especificações</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Especificação</th> + <th scope="col">Status</th> + <th scope="col">Comentário</th> + </tr> + <tr> + <td>{{SpecName('ES2015', '#sec-weakmap.prototype.delete', 'WeakMap.prototype.delete')}}</td> + <td>{{Spec2('ES2015')}}</td> + <td>Definição inicial</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-weakmap.prototype.delete', 'WeakMap.prototype.delete')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilidade_com_os_navegadores">Compatibilidade com os navegadores</h2> + +<div class="hidden">A tabela de compatibilidade nesta página é gerada a partir de dados estruturados. Se você quiser contribuir com os dados, confira A tabela de compatibilidade nesta página é gerada a partir de dados estruturados. Se você quiser contribuir com os dados, confira em <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> envie-nos seu pull request.</div> + +<p>{{Compat("javascript.builtins.WeakMap.delete")}}</p> + +<h2 id="Ver_também">Ver também</h2> + +<ul> + <li>{{jsxref("WeakMap")}}</li> +</ul> diff --git a/files/pt-br/web/javascript/reference/global_objects/weakmap/get/index.html b/files/pt-br/web/javascript/reference/global_objects/weakmap/get/index.html new file mode 100644 index 0000000000..fd35e8ce40 --- /dev/null +++ b/files/pt-br/web/javascript/reference/global_objects/weakmap/get/index.html @@ -0,0 +1,74 @@ +--- +title: WeakMap.prototype.get() +slug: Web/JavaScript/Reference/Global_Objects/WeakMap/get +translation_of: Web/JavaScript/Reference/Global_Objects/WeakMap/get +--- +<div>{{JSRef}}</div> + +<p>O método <code><strong>get()</strong></code> retorna um elemento especificado de um objeto <code>WeakMap</code>.</p> + +<div>{{EmbedInteractiveExample("pages/js/weakmap-prototype-get.html")}}</div> + +<p class="hidden">A fonte para este exemplo interativo está em um repositório no GitHub. Caso você queira contribuir para o projeto de exemplos interativos, por favor clone <a href="https://github.com/mdn/interactive-examples">https://github.com/mdn/interactive-examples</a> e nos envie uma pull request.</p> + +<h2 id="Sintaxe">Sintaxe</h2> + +<pre class="syntaxbox"><code><em>wm</em>.get(chave);</code></pre> + +<h3 id="Parâmetros">Parâmetros</h3> + +<dl> + <dt>chave</dt> + <dd>Obrigatório. A chave do elemento a ser retornado pelo objeto <code>WeakMap</code>.</dd> +</dl> + +<h3 id="Valor_de_retorno">Valor de retorno</h3> + +<p>O elemento associado à chave especificada no objeto <code>WeakMap</code>. Se a chave não for encontrada, retorna-se {{jsxref("undefined")}}.</p> + +<h2 id="Exemplos">Exemplos</h2> + +<h3 id="Utilizando_o_método_get">Utilizando o método <code>get</code> </h3> + +<pre class="brush: js">var wm = new WeakMap(); +wm.set(window, 'foo'); + +wm.get(window); // Retorna "foo". +wm.get('baz'); // Returna undefined. +</pre> + +<h2 id="Especificações">Especificações</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Specification</th> + <th scope="col">Status</th> + <th scope="col">Comment</th> + </tr> + <tr> + <td>{{SpecName('ES2015', '#sec-weakmap.prototype.get', 'WeakMap.prototype.get')}}</td> + <td>{{Spec2('ES2015')}}</td> + <td>Initial definition.</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-weakmap.prototype.get', 'WeakMap.prototype.get')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilidade_dos_navegadores">Compatibilidade dos navegadores</h2> + + + +<p>{{Compat("javascript.builtins.WeakMap.get")}}</p> + +<h2 id="Ver_também">Ver também</h2> + +<ul> + <li>{{jsxref("WeakMap")}}</li> + <li>{{jsxref("WeakMap.set()")}}</li> + <li>{{jsxref("WeakMap.has()")}}</li> +</ul> diff --git a/files/pt-br/web/javascript/reference/global_objects/weakmap/has/index.html b/files/pt-br/web/javascript/reference/global_objects/weakmap/has/index.html new file mode 100644 index 0000000000..4a6795c182 --- /dev/null +++ b/files/pt-br/web/javascript/reference/global_objects/weakmap/has/index.html @@ -0,0 +1,77 @@ +--- +title: WeakMap.prototype.has() +slug: Web/JavaScript/Reference/Global_Objects/WeakMap/has +translation_of: Web/JavaScript/Reference/Global_Objects/WeakMap/has +--- +<div>{{JSRef}}</div> + +<p>O método <code><strong>has()</strong></code> retorna um booleano indicando se um elemento com a chave especificada existe no objeto <code>WeakMap</code> ou não.</p> + +<p>{{EmbedInteractiveExample("pages/js/weakmap-prototype-has.html")}}</p> + + + +<h2 id="Sintaxe">Sintaxe</h2> + +<pre class="syntaxbox"><code><em>wm</em>.has(chave);</code></pre> + +<h3 id="Parameters">Parameters</h3> + +<dl> + <dt>chave</dt> + <dd>Obrigatório. A chave do elemento cuja presença deve ser verificada no objeto <code>WeakMap</code>.</dd> +</dl> + +<h3 id="Valor_de_retorno">Valor de retorno</h3> + +<dl> + <dt>Boolean</dt> + <dd>Retorna <code>true</code> se um elemento com a chave especificada existir no objeto <code>WeakMap</code>. Caso contrário, retorna <code>false</code>.</dd> +</dl> + +<h2 id="Exemplos">Exemplos</h2> + +<h3 id="Utilizando_o_método_has">Utilizando o método <code>has</code> </h3> + +<pre class="brush: js">var wm = new WeakMap(); +wm.set(window, 'foo'); + +wm.has(window); // retorna true +wm.has('baz'); // retorna false +</pre> + +<h2 id="Especificações">Especificações</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Specification</th> + <th scope="col">Status</th> + <th scope="col">Comment</th> + </tr> + <tr> + <td>{{SpecName('ES2015', '#sec-weakmap.prototype.has', 'WeakMap.prototype.has')}}</td> + <td>{{Spec2('ES2015')}}</td> + <td>Initial definition.</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-weakmap.prototype.has', 'WeakMap.prototype.has')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilidade_de_navegadores">Compatibilidade de navegadores</h2> + + + +<p>{{Compat("javascript.builtins.WeakMap.has")}}</p> + +<h2 id="Ver_também">Ver também</h2> + +<ul> + <li>{{jsxref("WeakMap")}}</li> + <li>{{jsxref("WeakMap.prototype.set()")}}</li> + <li>{{jsxref("WeakMap.prototype.get()")}}</li> +</ul> diff --git a/files/pt-br/web/javascript/reference/global_objects/weakmap/index.html b/files/pt-br/web/javascript/reference/global_objects/weakmap/index.html new file mode 100644 index 0000000000..1069690348 --- /dev/null +++ b/files/pt-br/web/javascript/reference/global_objects/weakmap/index.html @@ -0,0 +1,130 @@ +--- +title: WeakMap +slug: Web/JavaScript/Reference/Global_Objects/WeakMap +translation_of: Web/JavaScript/Reference/Global_Objects/WeakMap +--- +<div>{{JSRef("Global_Objects", "WeakMap")}}</div> + +<h2 id="Sumário">Sumário</h2> + +<p>O objeto WeakMap é uma coleção de pares key/value na qual as chaves são fracamente referenciadas.<br> + As chaves <strong>devem </strong>ser objetos, e os valores podem ser de tipos arbitrários.</p> + +<p>Você pode descobrir mais sobre <code>WeakMap</code>s na seção {{SectionOnPage("/en-US/docs/Web/JavaScript/Guide/Keyed_collections", "WeakMap object")}}.</p> + +<h2 id="Syntax" name="Syntax">Sintaxe</h2> + +<pre class="syntaxbox"><code>new WeakMap([iterable]) +</code></pre> + +<h3 id="Parameters" name="Parameters">Parâmetros</h3> + +<dl> + <dt><code>iterable</code></dt> + <dt><span style="font-weight: normal; line-height: 1.5;">Iterable é um Array ou outro objeto iterável cujos elementos são pares key-value (Arrays de dois elementos). Cada par key-value será adicionados ao novo <code>WeakMap</code>. <code>null</code> é tratado como <code>undefined</code>.</span></dt> +</dl> + +<h2 id="Descrição">Descrição</h2> + +<h3 id="Por_quê_WeakMap">Por quê <em>Weak</em>Map?</h3> + +<p><span style="line-height: 1.5;">Um programador JavaScript experiente vai notar que esta API pode ser implementada em JavaScript com dois arrays (um para chaves, um para valores) compartilhado pelos 4 métodos da API. Tal implementação teria duas principais incoveniências. A primeira é uma busca O(n) (n sendo o número de chaves no map). A segunda é o problema de memory leak. Com maps escritos manualmente, o array de chaves guardaria referências para objetos chave, prevenindo-os de serem coletados pelo Garbage Collector. Nos WeakMaps nativos, referências aos objetos chave são segurados de modo "fraco", o que significa que eles não previnem a coleção pelo GC no caso de não haver nenhuma outra referência ao objeto. </span></p> + +<p><span style="line-height: 1.5;">Por conta das referências serem fracas, chaves de <code>WeakMap</code> não são enumeráveis (i.e. não existe um método que dá a você uma lista de chaves). Se existisse tal método, a lista dependeria no estado da coleção do GC, introduzindo não-determinismo. Se você quiser ter uma lista de chaves, deve usar um {{jsxref("Map")}}. </span></p> + +<h2 id="Properties" name="Properties">Propriedades</h2> + +<dl> + <dt><code>WeakMap.length</code></dt> + <dd>O valor da propriedade <code>length</code> é 0.</dd> + <dt>{{jsxref("WeakMap.prototype")}}</dt> + <dd>Representa o prototype para o constructor <code>WeakMap</code>. Permite a adição de propriedades para todos os objetos <code>WeakMap</code>.</dd> +</dl> + +<h2 id="Boolean_instances" name="Boolean_instances"><font face="Courier New, Andale Mono, monospace">Instâncias <code>WeakMap</code></font></h2> + +<p>Todas as instâncias <code>WeakMap</code> herdam de {{jsxref("WeakMap.prototype")}}.</p> + +<h3 id="Propriedades">Propriedades</h3> + +<p>{{page('pt-BR/docs/JavaScript/Reference/Global_Objects/WeakMap/prototype','Propriedades')}}</p> + +<h3 id="Métodos">Métodos</h3> + +<p>{{page('pt-BR/Web/JavaScript/Reference/Global_Objects/WeakMap/prototype','Metodos')}}</p> + +<h2 id="Exemplos">Exemplos</h2> + +<h3 id="Exemplo_Usando_WeakMap">Exemplo: Usando <code>WeakMap</code></h3> + +<pre class="brush: js">var wm1 = new WeakMap(), + wm2 = new WeakMap(), + wm3 = new WeakMap(); +var o1 = {}, + o2 = function(){}, + o3 = window; + +wm1.set(o1, 37); +wm1.set(o2, "azerty"); +wm2.set(o1, o2); // um valor pode ser qualquer coisa, incluindo um objeto or uma função +wm2.set(o3, undefined); +wm2.set(wm1, wm2); // chaves e valores pode ser quaisquer objetos. Até mesmo WeakMaps! + +wm1.get(o2); // "azerty" +wm2.get(o2); // undefined, pois não existe valor para o2 em wm2 +wm2.get(o3); // undefined, pois este é o valor definido + +wm1.has(o2); // true +wm2.has(o2); // false +wm2.has(o3); // true (mesmo se o valor armazenado for 'undefined') + +wm3.set(o1, 37); +wm3.get(o1); // 37 +wm3.clear(); +wm3.get(o1); // undefined, pois wm3 foi 'limpado' e não há mais valor para o1. + +wm1.has(o1); // true +wm1.delete(o1); +wm1.has(o1); // false +</pre> + +<h2 id="Specifications" name="Specifications">Especificações</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">Especificações</th> + <th scope="col">Status</th> + <th scope="col">Comentário</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{SpecName('ES2015', '#sec-weakmap-objects', 'WeakMap')}}</td> + <td>{{Spec2('ES2015')}}</td> + <td>Definição inicial.</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-weakmap-objects', 'WeakMap')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilidade_com_browsers">Compatibilidade com browsers</h2> + +<p><br> + {{Compat("javascript.builtins.WeakMap")}}</p> + +<div id="compat-mobile"> </div> + +<h2 id="Veja_também">Veja também</h2> + +<ul> + <li><a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=547941">WeakMap bug at Mozilla</a></li> + <li><a href="http://fitzgeraldnick.com/weblog/53/">Hiding Implementation Details with ECMAScript 2015 WeakMaps</a></li> + <li>{{jsxref("Map")}}</li> + <li>{{jsxref("Set")}}</li> + <li>{{jsxref("WeakSet")}}</li> +</ul> diff --git a/files/pt-br/web/javascript/reference/global_objects/weakmap/prototype/index.html b/files/pt-br/web/javascript/reference/global_objects/weakmap/prototype/index.html new file mode 100644 index 0000000000..0baf6d569d --- /dev/null +++ b/files/pt-br/web/javascript/reference/global_objects/weakmap/prototype/index.html @@ -0,0 +1,117 @@ +--- +title: WeakMap.prototype +slug: Web/JavaScript/Reference/Global_Objects/WeakMap/prototype +translation_of: Web/JavaScript/Reference/Global_Objects/WeakMap +--- +<div>{{JSRef("Global_Objects", "WeakMap")}}</div> + +<h2 id="Summary" name="Summary">Sumário</h2> + +<p>A propriedade <code><strong>WeakMap</strong></code><strong><code>.prototype</code></strong> representa o prototype fara o construtor {{jsxref("WeakMap")}}.</p> + +<div>{{js_property_attributes(0,0,0)}}</div> + +<h2 id="Description" name="Description">Descrição</h2> + +<p>Instâncias {{jsxref("WeakMap")}} herdam de {{jsxref("WeakMap.prototype")}}. Você pode usar o objeto <code>prototype</code> do construtor para adicionar propriedades ou métodos para todas as instâncias <code>WeakMap</code>.</p> + +<h2 id="Propriedades">Propriedades</h2> + +<dl> + <dt><code>WeakMap.prototype.constructor</code></dt> + <dd>Retorna a função construtora das instâncias, neste caso a própria <code>{{jsxref("WeakMap")}}</code>.</dd> +</dl> + +<h2 id="Metodos">Metodos</h2> + +<dl> + <dt>{{jsxref("WeakMap.prototype.clear()")}}</dt> + <dd>Remove todos os pares chave/valor do objeto <code>WeakMap</code></dd> + <dt>{{jsxref("WeakMap.delete", "WeakMap.prototype.delete(key)")}}</dt> + <dd>Remove qualquer valor associado à <code style="font-style: normal; line-height: 1.5;">key</code><span style="line-height: 1.5;">. </span><code style="font-style: normal; line-height: 1.5;">WeakMap.prototype.has(key)</code> e retorna <code style="font-style: normal; line-height: 1.5;">false</code> após.</dd> + <dt>{{jsxref("WeakMap.get", "WeakMap.prototype.get(key)")}}</dt> + <dd>Retorna o valor associado a <code>key</code>, ou <code>undefined</code> se nenhum existir.</dd> + <dt>{{jsxref("WeakMap.has", "WeakMap.prototype.has(key)")}}</dt> + <dd>Retorna um Boolean verificando se há algum valor associado a <code>key</code> no objeto <code>WeakMap</code> ou não.</dd> + <dt>{{jsxref("WeakMap.set", "WeakMap.prototype.set(key, value)")}}</dt> + <dd>Configura um valor para <code>key</code> no objeto <code>WeakMap</code>. Retorna <code>undefined</code>.</dd> +</dl> + +<h2 id="Especificações">Especificações</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Especificação</th> + <th scope="col">Status</th> + <th scope="col">Comentário</th> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-weakmap.prototype', 'WeakMap.prototype')}}</td> + <td>{{Spec2('ES6')}}</td> + <td>Especificação inicial.</td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilidade_de_browsers">Compatibilidade de browsers </h2> + +<p>{{CompatibilityTable}}</p> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Recurso</th> + <th>Chrome</th> + <th>Firefox (SpiderMonkey)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari</th> + </tr> + <tr> + <td>Suporte básico</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatGeckoDesktop("6.0")}}</td> + <td>11</td> + <td>{{CompatNo}}</td> + <td>{{CompatNo}}</td> + </tr> + </tbody> +</table> +</div> + +<div id="compat-mobile"> +<table class="compat-table"> + <tbody> + <tr> + <th>Recurso</th> + <th>Android</th> + <th>Firefox Mobile (SpiderMonkey)</th> + <th>IE Mobile</th> + <th>Opera Mobile</th> + <th>Safari Mobile</th> + </tr> + <tr> + <td>Suporte básico</td> + <td>{{CompatNo}}</td> + <td>{{CompatGeckoMobile("6.0")}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatNo}}</td> + </tr> + </tbody> +</table> +</div> + +<h3 id="Notas_para_o_Chrome">Notas para o Chrome</h3> + +<ul> + <li>O recurso é ativado por preferência. Em <span style="font-family: 'Courier New','Andale Mono',monospace;">chrome://flags </span>ative "Enable Experimental JavaScript".</li> +</ul> + +<h2 id="Veja_também">Veja também</h2> + +<ul> + <li>{{jsxref("Map.prototype")}}</li> +</ul> diff --git a/files/pt-br/web/javascript/reference/global_objects/weakmap/set/index.html b/files/pt-br/web/javascript/reference/global_objects/weakmap/set/index.html new file mode 100644 index 0000000000..854f8ea816 --- /dev/null +++ b/files/pt-br/web/javascript/reference/global_objects/weakmap/set/index.html @@ -0,0 +1,85 @@ +--- +title: WeakMap.prototype.set() +slug: Web/JavaScript/Reference/Global_Objects/WeakMap/set +translation_of: Web/JavaScript/Reference/Global_Objects/WeakMap/set +--- +<div>{{JSRef}}</div> + +<p>O método <strong><code>set()</code></strong> adiciona um novo elemento com a <code>chave</code> e o <code>valor</code> especificados em um objeto <code>WeakMap</code>.</p> + +<div>{{EmbedInteractiveExample("pages/js/weakmap-prototype-set.html")}}</div> + + + +<h2 id="Sintaxe">Sintaxe</h2> + +<pre class="syntaxbox"><code><em>wm</em>.set(chave, valor);</code></pre> + +<h3 id="Parâmetros">Parâmetros</h3> + +<dl> + <dt>chave</dt> + <dd>Obrigatório. A chave do elemento a ser adicionado no objeto <code>WeakMap</code>.</dd> + <dt>valor</dt> + <dd>Obrigatório. O valor do elemento a ser adicionado no objeto <code>WeakMap</code>.</dd> +</dl> + +<h3 id="Valor_de_retorno">Valor de retorno</h3> + +<p>O objeto <code>WeakMap</code>.</p> + +<h2 id="Exemplos">Exemplos</h2> + +<h3 id="Utilizando_o_método_set">Utilizando o método <code>set</code> </h3> + +<pre class="brush: js">var wm = new WeakMap(); +var obj = {}; + +// Adicionar novos elementos ao WeakMap +wm.set(obj, 'foo').set(window, 'bar'); // encadeável + +// Atualizar um elemento no WeakMap +wm.set(obj, 'baz'); +</pre> + +<h2 id="Especificações">Especificações</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Specification</th> + <th scope="col">Status</th> + <th scope="col">Comment</th> + </tr> + <tr> + <td>{{SpecName('ES2015', '#sec-weakmap.prototype.set', 'WeakMap.prototype.set')}}</td> + <td>{{Spec2('ES2015')}}</td> + <td>Initial definition.</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-weakmap.prototype.set', 'WeakMap.prototype.set')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilidade_de_navegadores">Compatibilidade de navegadores</h2> + + + +<p>{{Compat("javascript.builtins.WeakMap.set")}}</p> + +<h2 id="Notas_específicas_ao_Firefox">Notas específicas ao Firefox</h2> + +<ul> + <li>Antes do Firefox 33 {{geckoRelease("33")}}, <code>WeakMap.prototype.set</code> retornava <code>undefined</code> e, portanto, não era encadeável. Isso foi resolvido ({{bug(1031632)}}). O comportamento também podia ser encontrado no Chrome/v8 (<a href="https://code.google.com/p/v8/issues/detail?id=3410">issue</a>).</li> +</ul> + +<h2 id="Ver_também">Ver também</h2> + +<ul> + <li>{{jsxref("WeakMap")}}</li> + <li>{{jsxref("WeakMap.prototype.get()")}}</li> + <li>{{jsxref("WeakMap.prototype.has()")}}</li> +</ul> |
