--- title: label (Etiqueta) slug: Web/JavaScript/Reference/Statements/label tags: - JavaScript - Statement translation_of: Web/JavaScript/Reference/Statements/label --- <div>{{jsSidebar("Statements")}}</div> <p>Provém uma declaração com um indentificador o qual pode ser referido posteriormente utilizando-se os comandos <em>break</em> ou <em>continue</em>.</p> <p>Por exemplo, você pode usar um <em>label</em> para identificar um laço e então com um comando de <em>break</em> ou <em>continue</em> indicar se este deve ser interrompido ou então continuar sua execução.</p> <h2 id="Syntax" name="Syntax">Sintaxe</h2> <pre class="syntaxbox"><em>label</em> : declaração </pre> <h3 id="Parameters" name="Parameters">Parâmetros</h3> <dl> <dt><code>label</code></dt> <dd>Qualquer idenfiticador JavaScript válido que não é uma palavra reservada.</dd> <dt><code>declaração</code></dt> <dd>Uma declaração qualquer. <em>break</em> pode ser utilizado com qualquer declaração entiquetada (com <em>label</em>) , assim como o <em>continue</em> também pode.</dd> </dl> <div class="warning"> <h3 id="Avoid_using_labels" name="Avoid_using_labels">Evite usar labels</h3> <p>Labels não são comunmente utilizados em JavaScript já que estes fazem com que programas fiquei mais difíceis de ler e entender. Sempre que possível evite utilizar labels e, dependendo dos casos, prefira <a href="https://developer.mozilla.org/pt-BR/docs/JavaScript/Reference/Statements/function">chamar funções</a> ou <a href="https://developer.mozilla.org/pt-BR/docs/JavaScript/Reference/Statements/throw">lançar um erro</a>.</p> </div> <h2 id="Examples" name="Examples">Examplos</h2> <h3 id="Example_1" name="Example_1"><code>Exemplo com continue</code></h3> <pre class="brush: js">var i, j; loop1: for (i = 0; i < 3; i++) { //O primeiro 'for' é etiquetado com "loop1" loop2: for (j = 0; j < 3; j++) { //O segundo é etiquetado com "loop2" if (i == 1 && j == 1) { continue loop1; } else { console.log("i = " + i + ", j = " + j); } } } // Sua saída é: // "i = 0, j = 0" // "i = 0, j = 1" // "i = 0, j = 2" // "i = 1, j = 0" // "i = 2, j = 0" // "i = 2, j = 1" // "i = 2, j = 2" // Note como pula-se "i = 1, j = 1" e "i = 1, j = 2" </pre> <h3 id="Example_2" name="Example_2">Exemplo 2 <code>(continue)</code></h3> <p>Dado uma lista de itens e outra de testes, este exemplo conta o número de ítens que passam em todos os testes.</p> <pre class="brush: js">var itemsPassed = 0; var i, j; top: for (i = 0; i < items.length; i++){ for (j = 0; j < tests.length; j++) if (!tests[j].pass(items[i])) continue top; itemsPassed++; }</pre> <h3 id="Example_3" name="Example_3">Exemplo 3 <code>(break)</code></h3> <p>Dado uma lista de ítens e uma lista de testes, neste exemplo determina-se se todos os ítens passam em todos os testes.</p> <pre class="brush: js">var allPass = true; var i, j; top: for (i = 0; items.length; i++) for (j = 0; j < tests.length; i++) if (!tests[j].pass(items[i])){ allPass = false; break top; } </pre> <h2 id="See_also" name="See_also">Veja também</h2> <ul> <li><a href="/en-US/docs/JavaScript/Reference/Statements/break" title="JavaScript/Reference/Statements/break">break</a></li> <li><a href="/en-US/docs/JavaScript/Reference/Statements/continue" title="JavaScript/Reference/Statements/continue">continue</a></li> </ul>