Como usar refletir API em JavaScript

Como usar refletir API em JavaScript

A reflexão em JavaScript é considerada a capacidade de manipular propriedades, variáveis ​​e métodos de objeto em tempo de execução. Refletir a API foi introduzida como um novo objeto global em ES6, permitindo que você invoca métodos de objeto, obtenha e defina valores de propriedades do objeto, construir objetos, estender e manipular propriedades. Também permite criar estruturas e programas dinâmicos de manuseio de código.

Este artigo discutirá o usar de Refletir API em JavaScript com a ajuda de exemplos adequados. Então vamos começar!

Refletir API em JavaScript

Refletir é um novo objeto global que oferece inúmeras funções de utilidade que se sobrepõem ao ES5 Global “Objeto”. Todos os métodos de API refletidos refletidos são os “Funções de introspecção,”Que permitem examinar e manipular as características de um objeto no tempo de execução.

Aqui, o ponto a considerar é que as funções de introspecção já estão incorporadas em JavaScript; Então, por que uma nova API é necessária quando esses recursos já podem fazer parte do objeto JavaScript?

Dê uma olhada nos pontos abaixo para obter a resposta:

Todas as APIs em um único namespace: Como mencionamos anteriormente, as APIs de reflexão de objetos já existem no JavaScript; No entanto, eles não foram estruturados em um único espaço para nome. Então, no ES6, todas as APIs de reflexão são organizadas dentro do “RefletirNamespace.

Simplicidade de código: Em JavaScript, quando um método de introspecção não conclui uma operação relacionada ao objeto especificado, ele lança uma exceção. Isso adiciona sobrecarga adicional ao programador para lidar com a exceção. Considerando que, no caso de refletir API, a exceção é tratada como um “boleano”(Verdadeiro ou falso) valor.

Confiabilidade das chamadas de função: Comparado às funções do objeto no ES5, a API reflete fornece uma maneira mais elegante e confiável de chamar ou aplicar uma função.

Agora, vamos passar pelo uso dos métodos de API refletidos em detalhes.

Como usar refletir.Método Construct () em JavaScript

O "Refletir.construir()”O método JavaScript é usado para invocar o construtor de API refletir enquanto especifica os argumentos necessários. Este método se comporta de maneira semelhante ao “novoOperador. Você também pode utilizar o reflexo.Método de construção () para o protótipo de configuração de um objeto.

Sintaxe de usar refletir.Método Construct () em JavaScript

Refletir.Construct (Target, ArgumentsList [, NewTarget])

Aqui, "alvo”Representa a função de destino que será invocada,“ArgummentList“São o parâmetro da função e“newTarget”É um parâmetro opcional usado para especificar o protótipo de um construtor.

Exemplo: como usar refletir.Método Construct () em JavaScript

Agora, vamos utilizar o reflete.Método de construção () para criar um objeto “x" tendo "Variedade”Prototype e a seguinte lista de argumentos:

const x = refletir.construção (matriz, [10,20,30,40,50]);
console.log (x);

A execução do código acima do ritmo retornará um novo “x”Objeto com a lista de argumentos especificados e seu protótipo:

Como usar refletir.Método Aplicar () em JavaScript

O "Refletir.aplicar()”O método é usado para chamar uma função com a ajuda do argumento especificado.

Sintaxe de usar refletir.Método Aplicar () em JavaScript

Refletir.aplicar (alvo, thisArg, argumentos)

Aqui, "alvo”Representa a função de destino que será invocada,“thisarg”Vai se comportar como um“essePalavra -chave para a função e “argumentos”Representam os parâmetros que a função invocada aceitará.

Exemplo: como usar refletir.Método Aplicar () em JavaScript

Primeiro de tudo, criaremos um “x”Array que compreende cinco elementos:

var x = [10,20,30,40,50];

Na próxima etapa, usaremos o “Refletir.aplicar()”Método para aplicar o“Matemática.máx”Função para a matriz chamada“x”:

console.log (reflita.Aplique (matemática.max, indefinido, x));

O "Matemática.máx”A função retornará o maior número que existe no“x" variedade:

Como usar refletir.Método DefineProperty () em JavaScript

Se você deseja adicionar ou atualizar as propriedades de um objeto, use o Refletir.DefineProperty () Método JavaScript. Funciona semelhante ao Objeto.DefineProperty () método; No entanto, o Refletir.DefineProperty () O método retorna um valor booleano, e depois o objeto modificado.

Sintaxe de usar refletir.Método DefineProperty () em JavaScript

Refletir.DefineProperty (Target, PropertyKey, Atributos)

Aqui, "alvo”Representa a função de destino que será invocada,“PropertyKey”Indica a propriedade do objeto que precisa ser definida ou modificada e“atributos”Defina o valor para o PropertyKey especificado.

Exemplo: como usar refletir.Método DefineProperty () em JavaScript

No exemplo abaixo, vamos definir “vamos definir“suporte"Como PropertyKey para o"obj1”Javascript Object, que contém“60”Como seu valor:

const obj1 = ;
(Reflita.defineProperty (obj1, 'prop', value: 60))
console.log (obj1.suporte);

Como você pode ver, definimos com sucesso um valor para o “suporte”PropertyKey de“obj1”Usando o Refletir.DefineProperty () método:

Como usar refletir.Método Get () em JavaScript

Em JavaScript, o Refletir.Método Get () Recupera a propriedade de um objeto como uma função.

Sintaxe de usar refletir.Método Get () em JavaScript

Refletir.Get (Target, PropertyKey [, receptor])

Aqui, "alvo”Representa o objeto JavaScript cuja propriedade é acessada,“PropertyKey”Indica o nome da propriedade que você deseja obter e“receptor”É um parâmetro opcional que representa o valor de“esse”Utilizado para chamar o alvo.

Exemplo: como usar refletir.Método Get () em JavaScript

O "Refletir.pegar()”O método é usado no exemplo a seguir para obter o primeiro valor da propriedade do “x" variedade:

var x = [10,20,30,40,50];
console.log (reflita.obter (x, '1'));

A saída do código fornecido exibirá o valor da propriedade especificada:

Como usar refletir.getPrototypeOf () Método em JavaScript

O "Refletir.getPrototypeOf ()”O método é chamado para recuperar o protótipo de um objeto JavaScript.

Sintaxe de usar refletir.getPrototypeOf () Método em JavaScript

Refletir.getPrototypeOf (Target)

Aqui, "alvo”Representa os objetos cujo protótipo será recuperado com a ajuda de Refletir.getPrototypeOf () método.

Exemplo: como usar refletir.getPrototypeOf () Método em JavaScript

Em primeiro lugar, criaremos um objeto de “nulo”Prototipo:

const obj1 = objeto.criar (nulo);

Depois disso, usaremos o “Refletir.getPrototypeOf ()”Método para obter o protótipo de“obj1”:

console.log (reflita.getPrototypeOf (obj1));

A saída abaixo do ritmo significa que “obj1" tem "nulo”Prototipo:

Como usar refletir.Método set () em JavaScript

Em JavaScript, o Refletir.Método set () é utilizado para definir o valor da propriedade de um objeto.

Sintaxe de usar refletir.Método set () em JavaScript

Refletir.Set (Target, PropertyKey, Value [, Receptor])

Aqui, "alvo”Representa o objeto JavaScript Valor da propriedade inteira que vamos definir,“PropertyKey”É uma propriedade de objeto especificada,“valor”Indica o novo valor. Por último, "receptor”É um parâmetro opcional com o valor de“esse”Utilizado para chamar o alvo.

Exemplo: como usar refletir.Método set () em JavaScript

Para demonstrar o uso de refletir.Método set (), antes de tudo, crie um objeto vazio chamado “obj”:

const obj = [];

Em seguida, execute o código abaixo para definir os valores da propriedade do objeto especificado:

Refletir.set (obj, 0, 'primeiro');
Refletir.set (obj, 1, 'segundo');
Refletir.set (obj, 2, 'terceiro');
console.log (obj);

Agora, confira o “obj”Valores de propriedade que definimos usando o reflete.Método set ():

Como usar refletir.Método DeleteProperty () em JavaScript

Você pode utilizar o Refletir.Método DeleteProperty () para excluir a propriedade especificada de um objeto.

Sintaxe de usar refletir.Método DeleteProperty () em JavaScript

Refletir.DeleteProperty (Target, PropertyKey)

Aqui, "alvo”Representa o objeto JavaScript cuja propriedade será excluída e“PropertyKey”Indica sua propriedade.

Exemplo: como usar refletir.Método DeleteProperty () em JavaScript

Este exemplo usará o reflete.Método DeleteProperty () para excluir o primeiro Valor da propriedade do criado “x”Objeto:

var x = [10,20,30,40,50];
Refletir.deleteProperty (x, '1');

Saída

O "Refletir.DeleteProperty ()”O método retornará“verdadeiro"Se a propriedade do objeto especificado for excluído com sucesso; Caso contrário, o caso de retorno será definido como “falso”Quando a propriedade especificada não é encontrada.

Conclusão

O uso de API refletir em JavaScript permite que você invoca métodos de objeto, obtenha e definir valores de propriedades de objeto, construir objetos, estender e manipular suas propriedades no tempo de execução. Também permite a criação de estruturas e programas dinâmicos de manipulação de código. Este artigo discutiu o uso da API refletida em JavaScript com a ajuda de exemplos adequados.