--- title: constructor slug: Web/JavaScript/Reference/Classes/constructor translation_of: Web/JavaScript/Reference/Classes/constructor original_slug: Web/JavaScript/Referencia/Classes/constructor ---
El mètode constructor
és un mètode especial per crear i inicialitzar un objecte creat amb una class
.
constructor([arguments]) { ... }
Només hi pot haver un mètode especial am el nom "constructor" en una classe. Es llançarà un {{jsxref("SyntaxError")}}, si la classe conté més d'un cas d'un mètode constructor
.
Un constructor pot utilitzar la paraula clau super
per cridar el constructor de la classe pare.
Aquest fragment de codi es pren de mostra de classes (demostració en viu).
class Square extends Polygon { constructor(length) { // Aquí es crida el constructor del pare de la classe amb les longituts // proveïdes per l'amplada i l'alçada del polígon super(length, length); // Nota: En classes derivades, s'ha de cridar super() abans // d'utilitzar 'this'. Obviar això causarà un error de referència. this.name = 'Square'; } get area() { return this.height * this.width; } set area(value) { this.area = value; } }
Especificació | Estat | Comentaris |
---|---|---|
{{SpecName('ES6', '#sec-static-semantics-constructormethod', 'Constructor Method')}} | {{Spec2('ES6')}} | Definició inicial. |
{{CompatibilityTable}}
Característica | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Suport bàsic | {{CompatChrome(42.0)}} |
Disponible només al canal Nightly (desde febrer del 2015) |
{{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
Característica | Android | Chrome per Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Suport bàsic | {{CompatUnknown}} | {{CompatChrome(42.0)}} | Disponible només al canal Nightly (desde febrer del 2015) | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |