English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial básico do JavaScript

Objeto do JavaScript

Função do JavaScript

HTML DOM do JS

BOM do navegador JS

Tutorial básico de AJAX

Manual de referência do JavaScript

Métodos do Objeto do JavaScript

métodoé um objeto, ou uma função associada, uma método é um objeto que é uma propriedade de uma função.

A definição de métodos é feita da mesma forma que a de funções convencionais, a diferença é que eles devem ser atribuídos como propriedades do objeto.

Acessar método JavaScript

Para recuperar métodos do objeto, você os chama da mesma forma que uma função convencional, apenas adicionando ao variável do objeto.

// Criação de objetos
var user = {
  firstName: "Seagull",
  lastName: "an",
  age: 22,
  location: "New Delhi",
  getName: function() {
 return this.firstName + "" + this.lastName;
  }
;
//Acessar o método getName()
user.getName();
Teste veja‹/›

Se você acessar o método sem os parênteses (), ele retornará a definição da função:

user.getName;
Teste veja‹/›

usandothisComo referência de objeto

O JavaScript tem um keyword especial chamado this, que você pode usar em métodos para se referir ao objeto atual.

Você pode ter notado que nossos métodos são um pouco estranhos. Vamos usar este como exemplo:

  getName: function() {
   return this.firstName + "" + this.lastName;
  }

O keyword this se refere ao objeto atual no qual o código foi escrito.-Portanto, neste caso, this é equivalente auser.

Dessa forma, this.firstName representaEste objetona propriedade firstName.

Você pode encontrarPalavras-chave JSTutorialno JSObtenha mais informações sobre o keyword this.

Adicionar novo método

Para adicionar um novo método a um objeto, você pode usar o operador de atribuição (=) para atribuir uma nova função ao atributo.

Este exemplo adiciona o método "greet" ao objeto usuário:

user.greet = function() {
    return "Hello World";
;
Teste veja‹/›

Getters e Setters

ECMAScript 5(2009) introduziu Getters e Setters.

getter é um método para obter um valor específico de atributo.

setter é um método para definir um valor específico de atributo.

Você pode definir getters e setters em qualquer objeto nuclear pré-definido ou objeto definido pelo usuário que suporte a adição de novos atributos.

Getter do JavaScript (palavra-chave get)

Este exemplo usa get locAtributo comolocationValor do atributo:

//Criação de um objeto
var user = {
  firstName: "Seagull",
  lastName: "Anna",
  age: 22,
  location: "New Delhi",
  get loc() {
     return this.location;
  }
;
//Exibe dados do objeto
document.getElementById("para").innerHTML = user.loc;
Teste veja‹/›

Setter do JavaScript (palavra-chave set)

Este exemplo usa set locAtributo comolocationValor do atributo:

// Criação de objetos
var user = {
  firstName: "Seagull",
  lastName: "Anna",
  age: 22,
  location: "New Delhi",
  set loc(x) {
     this.location = x;
  }
;
// Uso de setters para definir atributos do objeto
user.loc = "Goa";
// Exibe dados do objeto
document.getElementById("para").innerHTML = user.location;
Teste veja‹/›

Diferença entre Function função e Getter?

Os dois exemplos a seguir mostram a diferença entre function e getter:

Exemplo1(Usando função):
//Criação de objetos
var user = {
  firstName: "Seagull",
  lastName: "Anna",
  age: 22,
  location: "New Delhi",
  fullName: function() {
      return this.firstName + "" + this.lastName;
  }
;
// Exibe dados do objeto
document.getElementById("para").innerHTML = user.fullName();
Teste veja‹/›
Exemplo2(Usando getters):
// Criação de objetos
var user = {
  firstName: "Seagull",
  lastName: "Anna",
  age: 22,
  location: "New Delhi",
  get fullName() {
     return this.firstName + "" + this.lastName;
  }
;
//Exibe dados do objeto
document.getElementById("para").innerHTML = user.fullName;
Teste veja‹/›

Exemplo1 Tome fullName comoFunçãoAcesso: user.fullName().

Exemplo2 Tome fullName comoAtributoAcesso: user.fullName.

Uso de getters e setters:

  • Fornece uma sintaxe mais simples

  • Permite a sintaxe de atributos e métodos idêntica

  • Garante uma melhor qualidade de dados

  • É muito útil para o processamento backend

Object.defineProperty()

O método Object.defineProperty() também pode ser usado para adicionar getters e setters.

Sintaxe:
Object.defineProperty(object, property, {value : value})

Vamos usar o objeto "contador" como exemplo:

var counter = {i : 0};
Object.defineProperty(counter, "increment", { 
   get: function() {this.i++;}
});
Object.defineProperty(counter, "decrement", { 
   get: function() {this.i--;}
});
Object.defineProperty(counter, "reset", { 
   get: function() {this.i = 0;},
});
Object.defineProperty(counter, "add", {
   set: function (value) {this.i += value;}
});
Object.defineProperty(counter, "subtract", {
   set: function (value) {this.i -= value;}
});
counter.reset;
counter.add = 25;
counter.increment;
Teste veja‹/›