我想在这段代码中使用排列语法:
Math.min.apply( ...categories.map( cat => cat.category_id ) );
显示以下皮棉错误:
未提供"thisArg"的参数
如何在返回数组的函数上使用排列语法?
apply
获取上下文和数组中的参数。所以使用这个,
Math.min.apply(null, categories.map( cat => cat.category_id ) ));
但是由于apply
不使用上下文(请参阅此处的实现(,您应该简单地使用
Math.min(...categories.map( cat => cat.category_id ) ));
不要使用apply。
Math.min(...categories.map(c => c.category_id))
您的代码不正确。Function.apply
首先执行除this
参数之外的操作。例如:
Math.min.apply(Math, ...categories.map(cat => cat.category_id));
这里的问题是知道你是否真的需要使用apply。
总而言之,这只是一个"语法"错误。