【发布时间】:2021-07-30 07:56:00
【问题描述】:
我正在尝试根据函数的 number 参数将乘法表作为字符串返回,但第一个元素始终返回未定义。
我的代码
function multiTable(number) {
let arr = new Array(1, 2, 3);
let multiplication;
arr.forEach((element) => {
if (element > 0) {
multiplication += `${element} * ${number} = ${element * number}\n`;
}
});
return multiplication;
}
let table = multiTable(5);
console.log(table);
//Returns undefined1 * 5 = 5 2 * 5 = 10 .....etc
我是 JavaScript 新手,有什么我遗漏的吗?
【问题讨论】:
-
当一个简单的
for循环可以做时,声明let arr = new Array(1, 2, 3);没有多大意义 -
函数可简写为
const multiTable = (number) => Array.from({ length: 3 }, (_, index) => `${index + 1} * ${number} = ${index * number + number}`).join("\n"); -
@SebastianSimon 这是正确的,但我不确定它对于写“我是 JavaScript 新手”的人是否特别容易理解或有用;)
标签: javascript arrays integer