js如何将字符串作为函数名调用函数
1个回答
2018-09-06 · 百度知道合伙人官方认证企业
关注
展开全部
比如我现在有一个字符串str = "func_abc",func_abc是一个函数名,我现在知道str如何调用str这个字符串表示的函数.
思路:
1、用eval函数,字符串转换为命令行执行都可以通过eval函数。
2、如果函数不多,可以通过if等方式进行判断,执行不同的分支。
代码尺键示例:
function func_abc(){alert('a');}var str = "func_abc";eval(str+"()");//执行func_abc()函数
将其用到实际项目中:
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>将字符串作为函数名调用函数</title></head><body><span>指标:</span><select id="zhibiao"><option selected="" value="总体">总体</option><option value="queryManagementVolume">办理量</option><option value="queryTimeConsuming">平均耗时吵搭</option><option value="queryOvertimePercent">超时占比</option></陵碰巧select></body><script src="../js/jquery.js"></script><script>$(document).on("change",'select#zhibiao',function(){ var fn=$(this).val(); /* fn(); */ eval(fn+"()");});function queryManagementVolume(){ console.log("查询办理量");}function queryTimeConsuming(){ console.log("查询平均耗时");}function queryOvertimePercent(){ console.log("查询超时占比");}</script></html>
思路:
1、用eval函数,字符串转换为命令行执行都可以通过eval函数。
2、如果函数不多,可以通过if等方式进行判断,执行不同的分支。
代码尺键示例:
function func_abc(){alert('a');}var str = "func_abc";eval(str+"()");//执行func_abc()函数
将其用到实际项目中:
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>将字符串作为函数名调用函数</title></head><body><span>指标:</span><select id="zhibiao"><option selected="" value="总体">总体</option><option value="queryManagementVolume">办理量</option><option value="queryTimeConsuming">平均耗时吵搭</option><option value="queryOvertimePercent">超时占比</option></陵碰巧select></body><script src="../js/jquery.js"></script><script>$(document).on("change",'select#zhibiao',function(){ var fn=$(this).val(); /* fn(); */ eval(fn+"()");});function queryManagementVolume(){ console.log("查询办理量");}function queryTimeConsuming(){ console.log("查询平均耗时");}function queryOvertimePercent(){ console.log("查询超时占比");}</script></html>
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询