不明白怎么写
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>数组</title>
</head>
<body>
<script>
function arrReverse(arr){
var newArr=[];
for(var i=0;i<arr.length;i++){
//补充代码
newArr[i]=arr[arr.length-1-i];
}
//补充代码
return newArr;
}
document.write(arrReverse([1,2,3,4,5,6,7,8]));
</script>
</body>
</html>
正在回答 回答被采纳积分+1
同学你好,代码效果实现是正确的,对于本题的实现思路,具体可以参考如下解析:
1、arr.length是数组的长度,由于索引是从0开始,所以arr.length - 1是数组最后一项的索引,因此arr[arr.length - 1]是获取数组的最后一项。
2、newArr[i] = arr[arr.length - 1 - i]这句代码含义如下:
(1)当i=0时,代码实际是:newArr[0] = arr[8 - 1 - 0] = arr[7],即为newArr添加一项,值为arr的最后一项,该过程就实现了newArr的第一项,是arr的最后一项。
(2)当i=1时,代码实际是:newArr[1] = arr[8- 1 - 1] = arr[6],即为newArr再添加一项,值为arr的倒数第二项,该过程实现了newArr的第二项,是arr的倒数第二项。
(3)以此类推...
(4)当i=7 时,代码实际是:newArr[7] = arr[8 - 1 - 7] = arr[0],即为newArr再添加一项,值为arr的倒数第二项,该过程实现了newArr的最后一项,是arr的第一项。
就实现了newArr中的每一项,实际是arr中倒数的项。
祝学习愉快~


恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星