Protótipo de data JavaScript
Exemplo
Crie um novo método de data que dê ao objeto de data uma propriedade de nome de mês chamada myName:
Date.prototype.myMonth = function()
{
if (this.getMonth()==0) {return "January"};
if (this.getMonth()==1) {return "February"};
if (this.getMonth()==2) {return "March"};
if (this.getMonth()==3) {return "April"};
if (this.getMonth()==4) {return "May"};
if (this.getMonth()==5) {return "June"};
if (this.getMonth()==6) {return "July"};
if (this.getMonth()==7) {return "August"};
if (this.getMonth()==8) {return "September"};
if (this.getMonth()==9) {return "October"};
if (this.getMonth()==10) {return "November"};
if (this.getMonth()==11) {return "December"};
}
Crie um objeto Date e chame o método myMonth:
const d = new Date();
let month = d.myMonth();
Definição e uso
prototype
permite adicionar novas propriedades e métodos às datas.
prototype
é uma propriedade disponível com todos os objetos JavaScript.
Suporte ao navegador
prototype
é um recurso ECMAScript1 (ES1).
ES1 (JavaScript 1997) é totalmente suportado em todos os navegadores:
Chrome | IE | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes | Yes |
Sintaxe
Date.prototype.name = value
Aviso
Você não é aconselhado a alterar o protótipo de um objeto que você não controla.
Você não deve alterar o protótipo de tipos de dados JavaScript integrados como:
- Números
- Cordas
- Matrizes
- datas
- Booleanos
- Função
- Objetos
Altere apenas o protótipo de seus próprios objetos.
A propriedade protótipo
A propriedade JavaScript prototype
permite adicionar novas propriedades aos objetos:
Exemplo
function Person(first, last, age, eyecolor) {
this.firstName = first;
this.lastName = last;
this.eyeColor = eyecolor;
}
Person.prototype.nationality = "English";