javascript - 我的功能没有返回我想要的产品,为什么?
问题描述
我试图返回一个数字的每两个数字的乘积,例如我们有数字 123,我试图有 1*2,然后是 2*3。以最大者为准,应添加到最终的'产品中;多变的。
const findLargestProduct = array => {
let i=0, j=1, product = 0;
while (j < array.length) {
let result = array[i] * array[j];
if (result > product) {
product = result;
}
i++
j++
} return product;
}
console.log(findLargestProduct(589))
此代码的结果应为 72 (8*9=72)
解决方案
因为您输入的 589 是一个数字,所以array.length
它undefined
没有进入 while 循环。
您可以将其从 589 更改为“589”。
const findLargestProduct = array => {
let i=0, j=1, product = 0;
console.log(array.length);
while (j < array.length) {
let result = array[i] * array[j];
if (result > product) {
product = result;
}
i++
j++
} return product;
}
console.log(findLargestProduct('589'))
推荐阅读
- java - SSLSocket、SSLServerSocket、SSLEngine 和 SSLContext 对 SSLParameters 的支持
- c++ - 遍历最小堆时获取垃圾值
- odata - Select=*,PropertyName 不返回 Microsoft Graph api 中 PropertyName 的值
- swift - 整数文字“4294967295”在存储到“Int”时溢出
- javascript - 我怎样才能在javascript中追加?
- php - 致命错误:phpmyadmin 中的执行时间超过 30 秒
- java - Spring Boot 中的 500 内部服务器错误而不是 404
- angular - Angular – Socket.io 发出不工作
- python - 为什么相对进口如此受限制?
- openssl - Keytool list 命令显示不正确的密钥库格式