首页 > web前端 > js教程 > 正文

如何使用 JavaScript 从存储在字符串中的函数名称调用函数?

王林
发布: 2023-08-27 09:09:11
转载
1178人浏览过

如何使用 javascript 从存储在字符串中的函数名称调用函数?

我们将使用 eval() 函数从存储在字符串中的函数名称来调用函数。评估() 函数将字符串计算为 JavaScript 代码。这允许我们通过以下方式调用该函数 将包含其名称的字符串作为参数传递给 eval() 函数。

示例

这是一个完整的工作示例,说明如何使用 JavaScript 从存储在字符串中的函数名称调用函数 -

// Define the function that we want to call
function sayHello() {
   console.log("Hello, world!");
}

// Store the function name as a string
let functionName = "sayHello";

// Use the `eval()` function to convert the string to a function call
eval(functionName + "()");
登录后复制
  • 在上面的示例中,我们首先定义一个名为 sayHello() 的简单函数,它只记录“Hello, world!”到控制台。接下来,我们定义一个名为 functionName 的变量,它存储字符串“sayHello”,这是我们要调用的函数的名称。

  • 最后,我们使用 eval() 函数将字符串 functionName 与实际调用函数所需的括号 () 连接起来,将其转换为函数调用。

  • eval() 函数是 JavaScript 的一个强大但潜在危险的功能,它允许您像 JavaScript 代码一样计算字符串。一般不建议在生产代码中使用 eval(),因为它可用于执行任意代码,这可能存在安全风险。

    立即学习Java免费学习笔记(深入)”;

替代方法

值得一提的是,有更安全的方法可以从存储在字符串中的函数名称调用函数,而无需使用 eval,例如 -

let functionName = "sayHello";
let functionObj = window[functionName];
functionObj();
登录后复制

或者

let functionName = "sayHello";
let functionObj = window['sayHello'];
functionObj();
登录后复制

这些替代方案比使用 eval 更安全,因为它们不执行任意代码,而是直接通过名称引用函数。

以上就是如何使用 JavaScript 从存储在字符串中的函数名称调用函数?的详细内容,更多请关注php中文网其它相关文章!

java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
相关标签:
来源:tutorialspoint网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号