Как выполнить функцию JavaScript с именем в виде строки в Edge - PullRequest
0 голосов
/ 15 февраля 2019

function test(arg) {
    console.log("hello! " + arg);
    return true;
}
    
window["test"]("I AM");

В этом фрагменте кода я выполняю функцию по имени в виде строки.Он работает в большинстве браузеров, кроме Microsoft Edge.Как я могу выполнить функцию в Edge, если знаю только ее имя в виде строки?Я не хочу использовать eval ().

1 Ответ

0 голосов
/ 15 февраля 2019

Если вы определяете свою функцию прямо для объекта окна, тогда вы можете вызывать ее только со строкой.

window.test=(args)=>{console.log("hello! " + arg)}

window["test"]("My first stack overflow answer")

вернет "привет! Мой первый ответ о переполнении стека"

...