我试图编写一个将数字(x)乘以给定数字(y)一定次数(n)的函数。结果将以数组形式返回。
function multiplyBy(x, y, n) {
var arr = [],
z = x * y,
sum = 0;
for (var i = 0; i < n; i++) {
sum += z;
arr.push(sum);
}
return arr;
};
答案 0 :(得分:1)
这应该有效。
function multiplyBy(x, y, n) {
var arr = [];
var tot = x*y;
for (var i=0; i<n; i++){
arr.push(tot);
tot *= y;
}
return arr;
};
alert(multiplyBy(2,4,6))
答案 1 :(得分:0)
你需要this updated小提琴吗?
更新2:
function multiplyBy(x, y, n) {
var arr = [],
z = x * y,
sum = 0;
arr[0] = x * y;
for (var i = 1; i < n; i++) {
sum = arr[i - 1] * y;
arr.push(sum);
}
return arr;
};
答案 2 :(得分:0)
正如您所提到的multiplyBy(2, 4, 6);
,并且希望out put是8,32,128,512,2048,8192
function multiplyBy(x, y, n) {
var arr = [],
var z = x * y;
for (var i = 0; i < n; i++) {
arr.push(z);
z *= y;
}
return arr;
};
document.getElementById('choice').innerHTML = multiplyBy(2, 4, 6);
&#13;
#hidden {
display:none
}
&#13;
<div id="choice"></div>
<div id="hidden"></div>
&#13;
答案 3 :(得分:0)
这是一个更简约的功能。
JS:
function multiply(op1, op2, n) {
for(var results = []; n > 0; results.push(op1 *= op2), n--);
return results;
}
console.log(multiply(2, 4, 6));