【发布时间】:2019-11-10 16:12:14
【问题描述】:
我想缩短这个实现。
const person1 = {
data: () => ({ name: 'Andrei' })
}
const users = [person1];
const parse = (doc) => {
return (callback) => {
return callback(doc.data())
};
};
users.map(doc => parse(doc)(user => console.log(user)));
我正在考虑这样的事情,因为 parse 函数已经从 map 中获取参数,但我不知道该怎么做,甚至是否可能。
users.map(parse (user => console.log(user)));
【问题讨论】:
-
你想缩短哪一行?只有最后一个,其余的都给?
-
很简单,
console.log({name:'Andrei'})给出相同的结果:) -
@Bergi 是的,最后一个
-
@AndreiZgîrvaci 那么无尽有答案 - 扔掉所有东西。假设你想保留
users数组,为什么不写users.forEach(user => console.log(user.data()))-parse的目的是什么?你想如何重用它?为什么要用数组map的方法,你期待什么结果吗? -
然后像往常一样将其包装在一个函数中,当您有重复的代码时。让它返回一个承诺(就像你已经使用它一样),不要传递回调。
标签: javascript arrow-functions