首页 > 解决方案 > 如何访问两个参数,一个是数组,另一个是值?

问题描述

尝试编写一个函数来获取您在数组[quarters,dimes,nickels,pennies]和成本值的第二个参数中所做的更改n。所以 ( [quarters,dimes,nickels,pennies],n) 那么我想使用 reduce 方法来创建一个 ES6 风格的代码

我想了解如何使用 reduce 并在我的代码中获取第二个参数

const changeEnough = ([25, 20, 5, 0], 4.25)
const ct = (accumulator, currentValue) => 
    ((accumulator + currentValue) - intialValue >= 0);

console.log(changeEnough.reduce(ct));

我收到的错误消息是

changeEnough.reduce is not a function 

我想我不是在我的代码中询问 4.25 的另一个值

标签: javascriptarraysfunctionecmascript-6reduce

解决方案


你的声明changeEnough是错误的。使用这样的逗号运算符会产生最终值 - 它实际上什么?4.25

const changeEnough = ([25, 20, 5, 0], 4.25);
console.log(changeEnough);

因此,将第二个值作为第二个参数传递给reduce. 您可以通过使用数组来简化此操作changeEnough

const changeEnough = [[25, 20, 5, 0], 4.25];
const ct = (accumulator, currentValue) => ((accumulator + currentValue) - intialValue >= 0);

console.log(changeEnough[0].reduce(ct, changeEnough[1]));

(还要确保您已定义initialValue.)


推荐阅读