首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取Tampermonkey上可用函数的列表

获取Tampermonkey上可用函数的列表
EN

Stack Overflow用户
提问于 2019-05-25 02:08:36
回答 1查看 120关注 0票数 0

我目前有一个带有一系列上下文化函数的Tampermonkey脚本,我提供了这些函数作为在某个页面上运行的选项。

我的代码的一个简化版本是:

代码语言:javascript
复制
window.func1 = function func1() {...}
window.func2 = function func2(a) {...}
window.func3 = function func3(a, b) {...}

我希望有一些函数,可以接受我目前的脚本,并为我提供一个可用函数的列表,类似于:

代码语言:javascript
复制
>> getAvailableFunctions()
<< func1, func2, func3

我一直在使用Object.getOwnPropertyNames方法进行研究,但似乎不能用Tampermonkey来实现。

我可以输入一些信息吗?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2019-05-25 02:16:14

您可以尝试如下所示:

代码语言:javascript
复制
Object.entries(window).flatMap(([k, v]) => typeof v === "function" ? k : [])

Object.entries获取一个键-值对数组,这里的flatMap充当组合的filter + map。这相当于:

代码语言:javascript
复制
Object.entries(window).filter(a => typeof a[1] === "function").map(([k]) => k)

你也可以尝试排除像这样的原生函数(在FF和Chrome上测试):

代码语言:javascript
复制
Object.entries(window)
  .flatMap(([k, v]) => typeof v === "function" && !/{\s*\[native code]\s*}/.test(v) ? k : [])
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56297659

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档