javascript 如何把变量的值当成函数调用?

2017-12-18 09:35:55 +08:00
 xoxo419
function a() {
    console.log('this is a function');
}

function b() {
    console.log('this is b function');
}

//变量

var fun;

fun = 'a';

fun();  //如何可以让变量返回的字符串当成一个函数?
2272 次点击
所在节点    问与答
9 条回复
ballshapesdsd
2017-12-18 09:37:06 +08:00
eval?
Pastsong
2017-12-18 09:38:25 +08:00
window[fun]()
xoxo419
2017-12-18 09:38:38 +08:00
@ballshapesdsd 我想在微信小程序的, 但不支持这个函数...
ferrum
2017-12-18 09:41:01 +08:00
把字符串当作方法的名称,通过 obj["a"]调用?
jtsai
2017-12-18 09:42:44 +08:00
eval('a')
noe132
2017-12-18 09:45:36 +08:00
把函数定义到对象上。
let obj = {a:a b,b}
let name = 'a'
obj[name]()
crz
2017-12-18 09:51:14 +08:00
@xoxo419 new Function 呢
ipwx
2017-12-18 09:59:43 +08:00
6L 的方法最普通而有效。
Revenant
2017-12-18 10:18:54 +08:00
`${a()}`
`${b()}`
直接就执行了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/415570

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX