Please note, this is a STATIC archive of website developer.mozilla.org from November 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

static

This is a new technology, part of the ECMAScript 2015 (ES6) standard.
This technology's specification has been finalized, but check the compatibility table for usage and implementation status in various browsers.

A palavra chave static define um método estático para a classe.

Sintaxe

static methodName() { ... }

Descrição

Método estáticos são chamados sem instanciação da classe deles e também não são chamáveis quando a classe é instanciada. Métodos estáticos são comumente usados para a criação de funções utilitárias para uma aplicação.

Exemplos

O exemplo a seguir demonstra várias coisas. Ele mostra como um método estárico é implementado em uma classe e como uma classe com um membro estático pode virar uma subclasse. Por fim, ele mostra como um método estático pode e não pode ser chamado.

class Tripple {
  static tripple(n) {
    n = n | 1;
    return n * 3;
  }
}

class BiggerTripple extends Tripple {
  static tripple(n) {
    return super.tripple(n) * super.tripple(n);
  }
}

console.log(Tripple.tripple());
console.log(Tripple.tripple(6));
console.log(BiggerTripple.tripple(3));
var tp = new Tripple();
console.log(tp.tripple()); //Logs 'tp.tripple is not a function'.

Especificações

Especificação Status Comentário
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Class definitions' in that specification.
Standard Definição inicial.

Compatibilidade com os navegadores

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Suporte básico 42.0 Nightly build ? ? ?
Feature Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile Chrome for Android
Suporte básico Não suportado Nightly build ? ? ? 42.0

Veja também

Etiquetas do documento e colaboradores

 Colaboradores desta página: raduq
 Última atualização por: raduq,