嗨,对于我的一个实验室,它试图告诉我做任务,例如,修改1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 =输出总和,同时保持它在一行而不是在页面上级联。这是我到目前为止,我不知道如何完成它。
var y= ""
for ( x = 0; x < 11; x++ ) {
y+= x + "+" + "";
}
console.log(y);
修改
var sum = 0;
var y = "";
for (x = 0; x < 11; x++) {
y += x + "+" + "";
sum += x;
}
console.log(y, sum);
答案 0 :(得分:3)
试试这个
var y= ""
var temp=[]
for ( x = 0; x < 10; x++ ) {
temp.push(x+1);
}
y=temp.join('+');
var sum=temp.reduce(function(a, b){return a+b;});
y+='='+sum
console.log(y);
修改
更简单
var y = ""
var sum=0;
var n = 10;
for (x = 0; x < n; x++) {
var val=(+x + 1);
sum += val;
y += val;
if (x < n - 1) y += '+';
}
y+='='+sum;
console.log(y);
假设你有序列
n=5
表示1+2+3+4+5=15
n= 4
表示1+2+3+4=10
每次{n} +
后都没有被重复
这就是为什么if (x < n - 1)
在您使用+
<{1}} x=4
时x
时不会添加0
的原因
答案 1 :(得分:0)
试试这个......
var out= "";
var sum=0;
for ( var i = 1; i < 11; i++ ) {
out+=(i===1?""+i:"+"+i);
sum=sum+i;
}
console.log(out+"="+sum);
答案 2 :(得分:0)
试试这个演示:
var i = 1;
var out = '';
var sum = 0;
while (10 >= i) {
out += '+' + i;
sum += i ++;
}
out += '=' + sum;
out = out.substr(1);//remove the first `+`
document.write(out);
&#13;