O construtor visto acima, aceita como argumentos os parâmetros e o corpo da uma
função no formato string como pode ser visto na sintaxe abaixo.
Sintaxe
let nome_objeto = new Function(<functionBody>);
let nome_objeto = new Function(param0, ..., paramN, <functionBody>)
Onde
param0..N: string contendo parâmetro utilizado pela função
<functionBody>: string contendo corpo da função. Parâmentros de funções delimitados por '
Exemplo 2
let funcao1 = new Function("console.log('funcao1')");
let funcao2 = new Function('par1','par2','console.log(par1,par2)');
funcao1();
funcao2(1,2);
Saída
funcao1
1 2
A adição de retorno em uma Function utilizando o construtor acima deve
ser feita na string que contém a declaração do corpo da função, como no mostrado
no exemplo abaixo:
Exemplo 3
let funcao = new Function("p1","p2",'return p1 + p2;');
console.log(funcao(2,2));
Saída
4