javascript - 不理解 Javascript 中的高阶函数。收到错误
问题描述
我试图让这个程序使用这些函数通过使用高阶函数来打印 N 个完美幂。我把自己难住了,现在当我打印我的函数时,我得到一个 NaN 数组,它是我的“P”输入的长度。它的功能与我需要的非常接近,但我无法解决这个错误。任何帮助,将不胜感激。
输出的一个例子是,如果我输入:perfectpower(5,3); 我会看见:
5、25、125
power = (N, P) => {
return Math.pow(N, P);
}
function each(A, func) {
for (var i = 0; i < A.length; i++) {
A[i] = func(A[i]);
}
return A;
}
function sequence(N) {
return Array(N).fill().map((_, idx) => idx + 1)
}
perfectpower = (N, P) => {
return (each(sequence(P), power))
}
console.log(perfectpower(5,3));
console.log(sequence(5))
console.log(power(5,2))
解决方案
const power = (N) => (P) => {
return Math.pow(N, P);
}
function each(A, func) {
for (var i = 0; i < A.length; i++) {
A[i] = func(A[i]);
}
return A;
}
function sequence(N) {
return Array(N).fill().map((_, idx) => idx + 1)
}
const perfectpower = (N, P) => {
return (each(sequence(P), power(N)))
}
console.log(perfectpower(5,3));
推荐阅读
- c# - 为什么这个小程序永远不会完成?
- spring - Spring Boot - IntellIj:热交换不适用于资源/静态文件夹
- c# - 两种方法 POST 和 GET 之间的 WEB API 会话处理
- excel - 从一个或多个逗号分隔的字符串中提取
- batch-file - windows批处理文件中的相对路径
- scala - 从 Spark 调用休息服务
- reactjs - 没有为 typings-for-css-modules-loader 创建 d.ts 文件
- ios - 如何在objective-c中绘制半圆形图层中的切片
- css - 用 CSS 变量填充 SVG
- react-native - 开玩笑测试反应导航的问题