Именно поэтому мы используем new Function()
вместо eval()
, если нам действительно нужно eval()
для чего-либо.
Если вы передадите строку в конструктор Function, она автоматически вызовет eval()
вЭто.Так что нет необходимости переносить eval And function в одном выражении, это в основном делает одно и то же дважды.
const js_str = `
console.log('log this');
return 'ok';
console.log('DONT log this')
`;
const result = new Function( js_str )();
console.log( result );
Если бы вы могли объяснить, что вы создаете с помощью eval()
, возможно, было бы и лучшее решение.