javascript为什么返回7?
var-arr=[1,4,6,4,2]; console.logarr[0] forvar i=0;我就这么简单: 在循环中,当i等于0时,arr[i]等于1,arr[i+2]等于6。 然后,在arr[0]上加6,所以1+6等于7 伪代码:javascript为什么返回7?,javascript,Javascript,var-arr=[1,4,6,4,2]; console.logarr[0] forvar i=0;我就这么简单: 在循环中,当i等于0时,arr[i]等于1,arr[i+2]等于6。 然后,在arr[0]上加6,所以1+6等于7 伪代码: i = 0 arr[i] == arr[0] == 1 arr[i+2] == arr[2] == 6 arr[i] = arr[0] + arr[2] = 1 + 6 = 7 因为您通过执行此行更改了索引0处的值 arr[i] += arr[i+2];
i = 0
arr[i] == arr[0] == 1
arr[i+2] == arr[2] == 6
arr[i] = arr[0] + arr[2] = 1 + 6 = 7
因为您通过执行此行更改了索引0处的值
arr[i] += arr[i+2];
在第一个循环中:
`arr[0] = 1` and `arr[0+2] = 6`
显然
arr[0] = arr[0] + arr[2] is equal to 7
因此:
arr[0] = 7
在for循环的第一次交互期间,即当i=0时,语句arr[i]+=arr[i+2]变为: arr[0]=arr[0]+arr[2]=>
arr[0]=1+6,因为arr[0]=1和arr[2]=6,所以现在arr[0]是7您要添加数组的第0个索引和第二个索引,以及存储在数组第0个索引中的值。 代码: 输出: 1. 索引:0值:7----->1+6 索引:1值:8----->4+4 索引:2值:8----->6+2 七,
让我们看看发生了什么
var arr = [1,4,6,4,2];
console.log(arr[0])
for(var i =0;i<3;i++){
arr[i] += arr[i+2];
}
//arr[0]=arr[0]+arr[2]=>1+6=7 is stored in arr[0]
//arr[1]=arr[1]+arr[3]=>4+4=8 is stored in arr[1]
//arr[2]=arr[2]+arr[4]=>6+2=8 is stored in arr[2]
console.log(arr[0]);
在这里你可以看到数组的每个元素都是通过增加它的[+2]邻居来增加的。因此,arr[0]由arr[2]递增,即为7 arr[0]==1&&arr[2]==6和+=与arr[0]=arr[0]+arr[2]相同,因为您要求打印控制台。logarr[0]在for循环arr[0]+=arr[2]中,这意味着arr[0]=1+66+1=7。。。。。。。。
var arr = [1,4,6,4,2];
console.log(arr[0])
for(var i =0;i<3;i++){
arr[i] += arr[i+2];
}
//arr[0]=arr[0]+arr[2]=>1+6=7 is stored in arr[0]
//arr[1]=arr[1]+arr[3]=>4+4=8 is stored in arr[1]
//arr[2]=arr[2]+arr[4]=>6+2=8 is stored in arr[2]
console.log(arr[0]);