我正在尝试以增量方式获取每个元素的功效,即对于输入x = [6,9,5]
我希望我的输出为y = [6², 9³, 5⁴]
,功效从给定的变量p
开始。
我的代码:
var sqr = [];
var n = [6,9,5];
var p = 2;
for (let i = 0; i < n.length; i++) {
for (let j = p; j < n.length + 1; j++) {
sqr.push(Math.pow(n[i],j));
console.log(sqr);
i++;
}
return sqr;
它可以工作,但是永远不会执行最后一个元素,具体取决于数组和/或
p
的大小(我知道这是因为它会转到不存在的索引)。但是我想知道是否有更好的方法可以工作。谢谢 最佳答案
您只需要使用一个循环。您可以在循环内增加功率p
。
var sqr = [];
var n = [6,9,5];
var p = 2;
for (let i = 0; i < n.length; i++) {
sqr.push(Math.pow(n[i],p));
p++;
}
console.log(sqr);