---
title: Statements and declarations
slug: Web/JavaScript/Referencia/Sentencies
tags:
- JavaScript
- NeedsTranslation
- Reference
- TopicStub
- statements
translation_of: Web/JavaScript/Reference/Statements
---
{{jsSidebar("Statements")}}
Les aplicacions de JavaScript consisteixen en sentències amb una sintaxi adequada. Una sola sentència pot ocupar múltiples línies. Múltiples sentències poden donar-se en una sola línia si cada sentència és separada per un punt i coma. Això no és una paraula clau sino un grup de paraules claus.
Sentències i declaracions per categoria
Per a un llistat alfabetic vegeu el menú de l'esquerra.
Control de fluxe
- {{jsxref("Sentencies/block", "Block")}}
- Una sentència bloc s'utilitza per a agrupar zero o més sentències. El bloc és delimitat per un parell de claus {}.
- {{jsxref("Sentencies/break", "break")}}
- Acaba la sentència bucle, switch o label actual i transfereix el control del programa a la sentència que segueix la sentència que tot just s'ha acabat.
- {{jsxref("Sentencies/continue", "continue")}}
- Acaba l'execució de les sentències de la iteració del bucle actual o bé del bucle especificat, i continua l'execució del bucle amb la següent iteració.
- {{jsxref("Sentencies/Empty", "Empty")}}
- Una sentència buida s'utilitza per a proporcionar una sentència que no fa res quan JavaScript espera una sentència però no se'n necesita executar cap.
- {{jsxref("Sentencies/if...else", "if...else")}}
- Executa una sentència si la condició especificada és certa. Si la condició és falsa una altra sentència pot ser executada.
- {{jsxref("Sentencies/switch", "switch")}}
- Evalua una expressió, compara el resultat de l'evaluació amb una clàusula de tipus case i executa la sentència pertanyent a la clàusula case que és igual a l'evaluació de l'expressió.
- {{jsxref("Sentencies/throw", "throw")}}
- Llença una excepció definida per l'usuari.
- {{jsxref("Sentencies/try...catch", "try...catch")}}
- Executa un bloc de sentències i, en cas que alguna sentència del bloc llenci una excepció, executa una sentència alternativa.
Declaracions
- {{jsxref("Sentencies/var", "var")}}
- Declara una variable, opcionalment li assigna un valor.
- {{experimental_inline()}} {{jsxref("Sentencies/let", "let")}}
- Declara un bloc de variables d'àmbit local, opcionalment li assigna un valor.
- {{experimental_inline()}} {{jsxref("Sentencies/const", "const")}}
- Declara una constant de només lectura.
Funcions
- {{jsxref("Sentencies/function", "function")}}
- Declara una funció amb els paràmetres especificats.
- {{experimental_inline()}} {{jsxref("Sentencies/function*", "function*")}}
- Funcions generadores que permeten escriure iteradors de forma més senzilla.
- {{jsxref("Sentencies/return", "return")}}
- Especifica el valor que retornarà una funció.
Iteracions
- {{jsxref("Sentencies/do...while", "do...while")}}
- Crea un bucle que executa una sentència especificada fins que la condició de test s'evalua a fals. La condició s'evalua després d'executar la sentència, resultant en que la sentència especificada s'executa al menys un cop.
- {{jsxref("Sentencies/for", "for")}}
- Crea un bucle que sonsisteix en tres expressions opcionals embolcallades per parèntesi i separades per punts i coma, seguides d'una sentència que s'executarà en el bucle.
- {{deprecated_inline()}} {{non-standard_inline()}} {{jsxref("Sentencies/for_each...in", "for each...in")}}
- Itera sobre tots els valors de les propietats d'un objecte, assignant a una variable determinada el seu valor. Per a cada propietat distinta s'executa una sentència.
- {{jsxref("Sentencies/for...in", "for...in")}}
- Itera sobre les propietats enumerables d'un objecte en un ordre arbitrari. Per a cada propietat distinta s'executa una sentència.
- {{experimental_inline()}} {{jsxref("Sentencies/for...of", "for...of")}}
- Itera sobre objectes iterables (incloent arrays, objectes similar a arrays, iteradors i generadors), executant una sentència per al valor de cada propietat distinta.
- {{jsxref("Sentencies/while", "while")}}
- Crea un bucle que executa la sentència donada mentre una condició sigui certa. La condició s'evalua abans d'executar la sentència.
Altres
- {{jsxref("Sentencies/debugger", "debugger")}}
- Invoca qualsevol funcionalitat de depuració que estigui disponible. Si no hi ha cap funcionalitat de depuració disponible aquesta sentència no te cap efecte.
- {{experimental_inline()}} {{jsxref("Sentencies/export", "export")}}
- Utilitzada per a exportar funcions per a que aquestes estiguin disponibles per a imports a mòduls externs, en altres scripts.
- {{experimental_inline()}} {{jsxref("Sentencies/import", "import")}}
- Utilitzada per a importar funcions exportades d'un mòdul extern, un altre script.
- {{jsxref("Sentencies/label", "label")}}
- Asigna un identificador a una sentència. Aquest identificador pot ser emprat en sentències
break
o continue
.
- {{deprecated_inline()}} {{jsxref("Sentencies/with", "with")}}
- Extèn la cadena d'àmbit per a una sentència.
Especificacions
Especificació |
Estat |
Comentari |
ECMAScript 1a Edició |
Standard |
Definició inicial. |
{{SpecName('ES5.1', '#sec-12', 'Statements')}} |
{{Spec2('ES5.1')}} |
|
{{SpecName('ES6', '#sec-ecmascript-language-statements-and-declarations', 'Llenguatge ECMAScript: Sentències i declaracions')}} |
{{Spec2('ES6')}} |
Nou: function*, let, for...of, yield |
Vegeu també