return strs.reduce((prev, next) => {
let i = 0; while (prev[i] && next[i] && prev[i] === next[i]) i++; return prev.slice(0, i);
});代码如上,箭头函数我明白,代码相当于function(prev,next){}请问下这里的prev和next作为参数是什么样的用法呢?搜索next和prev得到的都是jquery的资料。。
1 回答
![?](http://img1.sycdn.imooc.com/54584ed2000152a202200220-100-100.jpg)
MMTTMM
TA贡献1869条经验 获得超4个赞
lz你搜索的时候,直接搜索"js reduce"吧。reduce函数会遍历数组,并且每次会给你两个值。如果是初次的话,会给你传入数组的前两个值,后续的话,prev是之前一次reduce运算的结果(前一次reduce的返回值),而next是当前遍历到的值。比如,下面例子中,第一次的时候,prev是'A',next是'B',而reduce传入的回掉执行第二次的时候,prev是上一次的返回值'A' + 'B' == 'AB',next是当前遍历到的值'C',例子如下:
['A', 'B', 'C', 'D'].reduce((prev, next) => { console.log(prev, next); return prev + next; });
希望可以帮助到你
添加回答
举报
0/150
提交
取消