break

This article needs an editorial review. How you can help.

La sentència break acaba el bucle actual, switch, o una sentència label i transfereix el control de programa a la sentència següent de la sentència acabada.

Sintaxi

break [etiqueta];
Etiqueta
Opcional. És l'identificador associat amb l'etiqueta de la sentència. Si la sentència no és un bucle o un switch, això és necessari.

Descripció

La sentència break inclou una etiqueta opcional que permet al programa sortir de la sentència etiquetada. La sentència break necessita ser imbricada dins l'etiqueta de referència. La sentència etiquetada pot ser qualsevol sentència block, no ha de ser precedida per una sentència de bucle.

Exemples

La funció següent té una sentència break que acaba amb el buclewhile quan i és 3, per després retornar el valor 3 * x.

function testBreak(x) {
  var i = 0;

  while (i < 6) {
    if (i == 3) {
      break;
    }
    i += 1;
  }

  return i * x;
}

El codi següent utilitza sentències break amb blocs etiquetats. Una sentència break ha de ser imbricada dins de qualsevol etiqueta que fa referència. Vegeu que inner_block és troba imbricada dins outer_block.

outer_block: {
  inner_block: {
    console.log('1');
    break outer_block; // surt tan de inner_block com de outer_block
    console.log(':-('); // es salta
  }
  console.log('2'); // es salta
}

El codi següent també utilitza sentències break amb blocs etiquetats però cenera un Syntax Error perquè la sentència break es troba dins de block_1 però fa referència a block_2. Una sentència break ha d'estar sempre imbricada dins de l'eitqueta a la que fa referència.

block_1: {
  console.log('1');
  break block_2; // SyntaxError: etiqueta no trobada
}

block_2: {
  console.log('2');
}

Especificacions

Especificació Estat Comentaris
ECMAScript 1st Edition (ECMA-262) Standard Definició inicial. Versió no etiquetada.
ECMAScript 3rd Edition (ECMA-262) Standard versió etiquetada afegida.
ECMAScript 5.1 (ECMA-262)
The definition of 'Break statement' in that specification.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Break statement' in that specification.
Standard  

Compatibilitat amb navegadors

Característica Chrome Firefox (Gecko) Internet Explorer Opera Safari
Suport bàsic (Yes) (Yes) (Yes) (Yes) (Yes)
Característica Android Chrome per Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Suport bàsic (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

Vegeu també

Document Tags and Contributors

 Contributors to this page: llue
 Last updated by: llue,