Os acessadores de objetos JavaScript são usados para acessar e atualizar os objetos e duas palavras -chave usadas para esta função são getter e o outro é o setter. JavaScript introduziu Getters e Setters em ES5 em 2009.
Veremos o que são getters e setters e como utilizá -los em javascript neste tutorial, além de examinar por que você deve usar métodos de get ou definir de javascript. Além disso, discutiremos o objeto.DefineProperty () também. No final, abordaremos alguma luz sobre o qual o navegador suporta o conjunto e obter métodos. Então vamos começar.
Obtenha palavra -chave
O método get é usado para recuperar um valor, como o nome implica, e no mundo técnico, ele pode ser definido como um aglutinante de uma propriedade de objeto para uma função que é chamada quando a propriedade é desejada. Não podemos obter o valor até acessar o método Get. No entanto, definimos a propriedade do objeto de antemão.
Exemplo:
const player =
Nome: "Hazard",
Clube: "Chelsea",
camisa: 10,
Get ClubName ()
devolver isso.clube;
;
Alerta (jogador.nome do clube);
Neste exemplo, usamos o ClubName Property Para obter o valor da propriedade do clube.
Defina a palavra -chave
É o oposto da palavra -chave Get. É usado para definir um valor. No mundo técnico, ele pode ser definido como um fichário de uma propriedade de objeto para uma função quando queremos definir uma propriedade.
Exemplo:
const player =
nome: "",
Clube: "Chelsea",
camisa: 10,
// Definindo o nome de um jogador
set setName (setName)
esse.nome = setName ;;
;
// Passando/Configurando o nome I-E Objeto Propriedade usando um Setter
jogador.setName = "Mount";
// vamos ver os dados através de um alerta
Alerta (jogador.nome);
Neste exemplo, criamos um objeto primeiro. Nesse objeto, criamos um método de conjunto usando o Set Keyword, onde estamos definindo o nome do jogador que é passado para ele. Após o objeto, definimos o nome do jogador e depois exibimos o resultado usando um alerta.
Função vs getters
Até agora você deve estar pensando, eles não são iguais, bem, a resposta é sim e não. Vamos explicar isso usando exemplos:
Função de exemplo:
const player =
Nome: "Hazard",
Clube: "Chelsea",
camisa: 10,
myfunc: function ()
devolver isso.nome+"reproduções para"+this.clube;
;
Alerta (jogador.myfunc ());
Exemplo getter:
const player =
Nome: "Hazard",
Clube: "Chelsea",
camisa: 10,
obtenha myfunc ()
devolver isso.nome+"reproduções para"+this.clube;
;
Alerta (jogador.myfunc);
No exemplo da função, estamos recebendo o myfunc () Como uma função eu-e jogador.myfunc (). No entanto, no exemplo getter, estamos acessando o Propriedade I-E Player.myfunc (). Agora sabemos que a sintaxe getter é mais fácil e legível do que a função.
Objeto.defineProperty () em JavaScript
O Objeto JavaScript.DefineProperty () é usado para adicionar getters e setters. São necessários três argumentos e a sintaxe de Objeto.DefineProperty () é:
Objeto.DefineProperty (ObjectName, PropertyName, ObjectDescriptor)
O primeiro argumento é o nome do objeto, o segundo é o nome da propriedade e o terceiro argumento é uma descrição do objeto.
Por exemplo:
// Defina um objeto
const player =
Nome: "Eden"
// agora temos uma propriedade de um objeto
Objeto.DefineProperty (Player, "GetName",
get: function ()
devolver isso.nome;
);
// agora definimos a propriedade de um objeto
Objeto.DefineProperty (Player, "SetName",
SET: function (val)
esse.nome = val;
);
console.log (jogador.nome);
// Vamos dar ao jogador um nome completo
jogador.setName = "Hazard";
console.log (jogador.nome);
Neste exemplo, primeiro, definimos um objeto. Depois disso, usando Objeto.DefineProperty () Definimos o setter e getter. Agora, quando console pela primeira vez.Log O nome do jogador é "Eden". Mas quando definimos o nome usando o Setter, o nome do jogador muda para perigo, conforme definido por nós.
É verdade que quando usamos getters e setters, o JavaScript garante melhor qualidade de dados.
Por exemplo:
// Criando um objeto
const player =
Nome: "Hazard",
Clube: "Chelsea",
camisa: 10,
obtenha myfunc ()
devolver isso.nome+"reproduções para"+this.clube.tolowerCase ();
;
// Usando os dados do Get Display
Alerta (jogador.myfunc);
Neste exemplo, usamos o nome e a propriedade do clube do objeto Player. Nós o convertemos para a parte superior e inferior e retornamos esse valor. A solução parecia assim:
Por que usar getters e setters?
Quais navegadores apóiam isso?
Microsoft borda | Ópera | Safári | Mozilla Firefox | Google Chrome |
---|---|---|---|---|
9.0 e acima | sim | sim | sim | sim |
Conclusão
Aprendemos quase tudo sobre os avaliadores JavaScript que são métodos de obtenção e definição em JavaScript neste post. Entrando em um pouco de profundidade, também explicamos que objeto.defineproperty () é. Além disso, discutimos os profissionais do uso de avaliadores em JavaScript e quais navegadores apoiam os avaliadores. Ao usar os avaliadores, um desenvolvedor faz seu código executar ações nos bastidores e protege dados. Como tem uma sintaxe mais simples, também torna nosso código mais limpo.