diff options
Diffstat (limited to 'files/pt-br/web/javascript/reference/global_objects/array/shift')
-rw-r--r-- | files/pt-br/web/javascript/reference/global_objects/array/shift/index.html | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/files/pt-br/web/javascript/reference/global_objects/array/shift/index.html b/files/pt-br/web/javascript/reference/global_objects/array/shift/index.html new file mode 100644 index 0000000000..34aedcaa51 --- /dev/null +++ b/files/pt-br/web/javascript/reference/global_objects/array/shift/index.html @@ -0,0 +1,104 @@ +--- +title: Array.prototype.shift() +slug: Web/JavaScript/Reference/Global_Objects/Array/shift +tags: + - Array + - JavaScript + - Prototype + - Reference + - metodo +translation_of: Web/JavaScript/Reference/Global_Objects/Array/shift +--- +<div>{{JSRef("Global_Objects", "Array")}}</div> + +<h2 id="Summary" name="Summary">Sumário</h2> + +<p>O método <strong style="font-family: courier new,andale mono,monospace; line-height: 1.5;">shift()</strong><span style="line-height: 1.5;">remove o <strong>primeiro</strong> elemento de um array e retorna esse elemento. Este método muda o tamanho do array.</span><strong style="font-family: courier new,andale mono,monospace; line-height: 1.5;"> </strong></p> + +<p>{{EmbedInteractiveExample("pages/js/array-shift.html")}}</p> + +<div class="hidden"> +<p>O código deste exemplo interativo está salvo em um repositório do GitHub. Se você quiser contribuir com o projeto de exemplos interativos, clone <a href="https://github.com/mdn/interactive-examples">https://github.com/mdn/interactive-examples</a> e envie-nos um pull request.</p> +</div> + +<h2 id="Syntax" name="Syntax">Sintaxe</h2> + +<pre class="syntaxbox notranslate"><code><var>arr</var>.shift()</code></pre> + +<h3 id="Valor_de_retorno">Valor de retorno</h3> + +<p>O elemento removido do array; {{jsxref("undefined")}} se o array estiver vazio.</p> + +<h2 id="Description" name="Description">Descrição</h2> + +<p>O método shift remove o elemento de índice zero, diminui em 1 os indices dos demais valores e retorna o valor removido. Se a propriedade {{jsxref("Array.length", "length")}} for 0, então {{jsxref("undefined")}} é retornado.</p> + +<p><code>shift</code> é intencionalmente genérico; esse método pode ser {{jsxref("Function.call", "chamado", "", 1)}} ou {{jsxref("Function.apply", "aplicado", "", 1)}} para objetos parecidos com arrays. Objetos que não contém a propriedade <code>length </code>representando o tamanho de uma série consecutiva, começando em zero, podem não se comportar de maneira correta.</p> + +<h2 id="Examples" name="Examples">Exemplos</h2> + +<h3 id="Example_Removing_an_element_from_an_array" name="Example:_Removing_an_element_from_an_array">Removendo um elemento de array</h3> + +<p>O código a seguir mostra o array <code>minhaLista</code> antes e depois de remover seu primeiro elemento. Ele também mostra o elemento removido.</p> + +<pre class="brush: js notranslate">var minhaLista = ['anjo', 'casa', 'mandarim', 'medico']; + +console.log('minhaLista antes: ' + minhaLista); +// minhaList antes: ['anjo', 'casa', 'mandarim', 'medico'] +var shifted = minhaLista.shift(); + +console.log('minhaLista depois: ' + minhaLista); +// minhaList depois: ['casa', 'mandarim', 'medico'] +console.log('Elemento removido: ' + shifted); +// Elemento removido: anjo +</pre> + +<h3 id="Example_Removing_an_element_from_an_array" name="Example:_Removing_an_element_from_an_array">Usando o método shift() dentro de um loop de while</h3> + +<p>O médodo shift() é frequentemente usado como condição dentro de um loop de while. No exemplo a seguir, cada iteração removerá o elemento seguinte do array, até que ele esteja vazio:</p> + +<pre class="brush: js notranslate">var nomes = ["André", "Eduardo", "Paulo", "Cris", "João"]; +while( (i = nomes.shift()) !== undefined ) { + console.log(i); +} +// André Eduardo Paulo Cris João</pre> + +<h2 id="Specifications" name="Specifications">Especificações</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Especificação</th> + <th scope="col">Estado</th> + <th scope="col">Comentário</th> + </tr> + <tr> + <td>ECMAScript 3rd Edition</td> + <td>Standard</td> + <td>Implementação inicial. Implementado no JavaScript 1.2.</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-15.4.4.9', 'Array.prototype.shift')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td></td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-array.prototype.shift', 'Array.prototype.shift')}}</td> + <td>{{Spec2('ES6')}}</td> + <td></td> + </tr> + </tbody> +</table> + +<h2 id="Browser_compatibility" name="Browser_compatibility">Compatibilidade de Browser</h2> + +<div>{{Compat("javascript.builtins.Array.shift")}}</div> + +<h2 id="See_also" name="See_also">Veja também</h2> + +<ul> + <li>{{jsxref("Array.prototype.push()")}}</li> + <li>{{jsxref("Array.prototype.pop()")}}</li> + <li>{{jsxref("Array.prototype.unshift()")}}</li> + <li>{{jsxref("Array.prototype.concat()")}}</li> +</ul> |