Вам бонус- начислено 1 монета за дневную активность. Сейчас у вас 1 монета

Javascipt вызов функции по имени в виде строки кратко

Лекция



В JavaScript вы можете вызывать функцию по ее имени, даже если это имя представлено в виде строки. Есть несколько способов добиться этого, но один из распространенных — использование глобального объекта (например, windowв браузерах или globalв Node.js). Вот как это сделать:

Способ 1: Использование глобального объекта (для функций, определенных в глобальной области):


 
JavaScript
// Предполагtv, что у вас есть функция с именем myFunction в глобальной области видимости
function myFunction() {
console.log("Hello, I'm the function!");
}
const functionName = "myFunction";
// Вызов функции по ее имени в виде строки с использованием глобального объекта
window[functionName](); // Для брайзеров консоли
// OR
global[functionName](); // Для Node.js

Способ 2: Использование объекта (для функций, определенных внутри объекта):


 
JavaScript
const myObject = {
someFunction: function () {
console.log("Здравствуйте, я функция внутри объекта!");
},
};
const functionName = "someFunction";
// Вызов функции по имени в виде строки с использованием объекта
myObject[functionName]();

Способ 3: Использование eval()(не рекомендуется из-за угроз безопасности):


 
JavaScript
function myFunction() {
console.log("Привет, я функция!");
}
const functionName = "myFunction";
// Вызов функции по ее имени в виде строки с использованием eval() - не рекомендуется!
eval(functionName + "()");

Примечание. Хотя eval()это можно использовать для достижения этой цели, обычно это не рекомендуется из-за потенциальных уязвимостей безопасности и проблем с производительностью. Лучше всего использовать первый или второй метод, в зависимости от области действия функции, которую вы хотите вызвать.

создано: 2023-07-18
обновлено: 2024-11-14
1



Рейтиг 9 of 10. count vote: 2
Вы довольны ?:


Поделиться:

Найди готовое или заработай

С нашими удобными сервисами без комиссии*

Как это работает? | Узнать цену?

Найти исполнителя
$0 / весь год.
  • У вас есть задание, но нет времени его делать
  • Вы хотите найти профессионала для выплнения задания
  • Возможно примерение функции гаранта на сделку
  • Приорететная поддержка
  • идеально подходит для студентов, у которых нет времени для решения заданий
Готовое решение
$0 / весь год.
  • Вы можите продать(исполнителем) или купить(заказчиком) готовое решение
  • Вам предоставят готовое решение
  • Будет предоставлено в минимальные сроки т.к. задание уже готовое
  • Вы получите базовую гарантию 8 дней
  • Вы можете заработать на материалах
  • подходит как для студентов так и для преподавателей
Я исполнитель
$0 / весь год.
  • Вы профессионал своего дела
  • У вас есть опыт и желание зарабатывать
  • Вы хотите помочь в решении задач или написании работ
  • Возможно примерение функции гаранта на сделку
  • подходит для опытных студентов так и для преподавателей

Комментарии


Оставить комментарий
Если у вас есть какое-либо предложение, идея, благодарность или комментарий, не стесняйтесь писать. Мы очень ценим отзывы и рады услышать ваше мнение.
To reply

Выполнение скриптов на стороне клиента JavaScript, jqvery, JS фреймворки (Frontend)

Термины: Выполнение скриптов на стороне клиента JavaScript, jqvery, JS фреймворки (Frontend)