Как преобразовать имя строковой функции в указатель функции в JavaScript

Чтобы преобразовать строку, представляющую имя функции, в указатель на функцию в JavaScript, у вас есть несколько различных вариантов. Вот несколько методов, которые вы можете использовать, а также примеры кода:

Метод 1: использование объекта окна

const functionName = 'myFunction';
const functionPointer = window[functionName];

Метод 2: использование eval()

const functionName = 'myFunction';
const functionPointer = eval(functionName);

Метод 3. Использование глобального объекта (Node.js)

const functionName = 'myFunction';
const functionPointer = global[functionName];

Метод 4. Использование конструктора функций

const functionName = 'myFunction';
const functionPointer = new Function(`return ${functionName}`);

Метод 5: использование альтернативы eval() (ES6)

const functionName = 'myFunction';
const functionPointer = (0, eval)(functionName);

Метод 6. Использование объекта окна с вложенными свойствами

const functionPath = 'myObject.myFunction';
const [objectName, methodName] = functionPath.split('.');
const functionPointer = window[objectName][methodName];

Метод 7. Использование конструктора функции с аргументами

const functionName = 'myFunction';
const arg1 = 5;
const arg2 = 'hello';
const functionPointer = new Function(`return ${functionName}`)(arg1, arg2);