DesignLiquido / delegua

Linguagem de programação 100% em português baseada em TypeScript, independente de sistema operacional e dispositivo, e suporte a múltiplos dialetos.
MIT License
227 stars 23 forks source link

Permitir que as funções mapear e filtrarPor sejam utilizadas como método de vetor #432

Closed JohnPetros closed 1 year ago

JohnPetros commented 1 year ago

A função ordenar pode ser usada tanto como uma função global, quanto um método de vetor:

var numeros = [5, 2, 8, 1, 4];

ordenar(numeros);

escreva(numeros); 
// Resultado: [1, 2, 4, 5, 8]
var numeros = [5, 2, 8, 1, 4];

numeros.ordenar();

escreva(numeros); 
// Resultado: [1, 2, 4, 5, 8]

Contudo, aparentemente só é possível usar mapear e filtrarPor como função global.

Seria bastante interessante permitir que qualquer vetor usasse essas funções como método.

var numeros = [1, 2, 3, 4, 5];

var  numerosPares = numeros.filtrarPor(funcao(numero) {
  retorna numero % 2 === 0;
});

escreva(numerosPares); 
// Resultado: [2, 4]
var numeros = [1, 2, 3, 4, 5];

var numerosDobrados = numeros.mapear(funcao (numero) {
  retorna numero * 2;
});

escreva(numerosDobrados); 
// Resultado: [2, 4, 6, 8, 10]
leonelsanchesdasilva commented 1 year ago

https://github.com/DesignLiquido/delegua/pull/437