javascript - Typescript - 如何将字符串 ("console.log") 转换为函数 (console.log)

标签 javascript typescript

使用 typescript ,我需要将一些字符串(如“Math.floor”和“console.log”)转换为函数Math.floor和console.log,以便能够在作为字符串参数传递时使用这些函数.

例如

applyFunction ("Math.floor", 4.2); // => Math.floor(4.2) => 4
applyFunction ("console.log", "Hi"); // => console.log("Hi") => Hi

等等。

我尝试将它们添加为对象中的键和值,并在需要时扫描该对象。但由于我没有时间不断搜索和添加所有现有的 Typescript 函数,因此我正在寻找一种更全面的方法。

最佳答案

FWIW您可以使用eval()将字符串解析为代码。

示例:

eval("console.log('foo')")

话虽如此,我建议您be careful when using eval() .

关于javascript - Typescript - 如何将字符串 ("console.log") 转换为函数 (console.log),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44501510/

相关文章:

javascript - IE 的非冒泡提交事件的解决方法

javascript - 当滚动到达某个点时事件无限次触发

node.js - Google App Engine 上的 NestJS 项目显示错误 "Could not write file"&& "EROFS: read-only file system"

javascript - 在 Angular 应用程序中对 Observable 的 POST 请求使用 switchMap

javascript - 使用 TypeScript 的 Polyfills、Shims 和扩展

javascript - typescript /Javascript : Default for Map-miss

javascript - 使用 javascript 检查查询字符串是否有值

javascript - 将/ja-jp/网站的标准字体样式更新为微软的Meiryo字体

javascript - 从 URL 输入渲染/预览图像

typescript - TypeError : self. parent.parent.parent.context 不是函数 Angular 2