美文网首页javaScript
js -- 实现同步map函数

js -- 实现同步map函数

作者: 反者道之动001 | 来源:发表于2018-12-20 12:04 被阅读17次

我们现在有一个数据, 想要遍历修改他的数据, 比如我们从数据库查询的值,这个是异步的, 那么如何用map的方式实现呢

-- 上代码

const asyncMap = func => AF => arr => new Promise((resolve) => {
        var arr2 = []
        arr.forEach(async (e, index) => {
            let a = await AF(func(e))
            arr2.push(a)
            arr.length == index + 1 && resolve(arr2)
        })
    })

使用例子:

(async () => {
    var arr = [3, 3, 4, 5, 7, 99, 56]
    var getUserAge = (n) => new Promise((resolve) => {resolve(n)})

   // 使用
    var newArr = await asyncMap(e => e + 3)(getUserAge)(arr)
    console.log(newArr)
})()

推荐搞到全局里面去。

--END--

相关文章

网友评论

    本文标题:js -- 实现同步map函数

    本文链接:https://www.haomeiwen.com/subject/trcykqtx.html