gpt4 book ai didi

javascript - 将函数数组转换为字符串数组

转载 作者:行者123 更新时间:2023-12-02 21:18:01 25 4
gpt4 key购买 nike

假设我有一个函数数组:

let myArray = [foo, bar, baz];

我想将其转换为带有函数名称的字符串数组:

let myArrayAsStrings = ['foo', 'bar', 'baz'];

我怎样才能做到这一点?

我尝试过这样做

myArray.map(fn => fn.name)

但是我认为我的 babel 配置破坏了函数名称,因此不能保证名称相同。

想知道是否有某种我不知道的“将变量名称转换为字符串”方法?

最佳答案

尚不清楚 foobarbaz 是否是普通函数(function foo() {} )、未命名函数 (var foo = funtion () {}) 或箭头函数(只能是匿名函数)。 fn.name 仅适用于第一种情况,其他两种情况没有名称。

理论上,这可能是一种解决方法:

var myArrayAsStrings = Object.keys({ foo, bar, baz });

这将首先将每个函数存储为属性,然后我们可以从对象中提取属性名称作为键数组。该解决方案的缺点是无法保证顺序。

但是,如果存在某种丑化,那么代码中的原始名称将会丢失。

关于javascript - 将函数数组转换为字符串数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60918248/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com