1、业务场景:在开发业务时,有一个对象数组,对象数组有一个字段是数字,我需要筛选出这个数组对应的数字字段的最大值,于是用到了如下代码:
Math.max.apply(Math,mayArr.map((item:{score:number})=> return item.score)
2、eslint报错如下:使用展开操作符替代.apply()
2、报错原因:
查看eslint文档内容如下:
在
ES2015
以前,你必须使用Function.prototype.apply()
来调用可变函数。在ES2015
以后,你可以使用展开操作符来调用可变函数。
3、找到原因之后就可以知道如下修改这个报错了,修改如下:
Math.max(...myArr.map((item: { score: number }) => {
return item.score;
}));