2-10问题newArr[i]=arr[arr.length-i-1]这一条看不懂,能解释一下吗

2-10问题newArr[i]=arr[arr.length-i-1]这一条看不懂,能解释一下吗

<!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-i-1]
        }
       return newArr;
    }
   document.write(arrReverse([1,2,3,4,5,6,7,8]));
</script>
</body>
</html>


正在回答

登陆购买课程后可参与讨论,去登陆

1回答

① arr.length-i-1 的意思:你传入数组的长度 减 i 减 1 后得到的 值 。

② arr[arr.length-i-1]的意思:你传入数组里索引是①的值的那个 项 。

③ newArr[i]=arr[arr.length-i-1]的意思: 把②的项赋值给新的空数组newArr[]。

④ 就是把你传入数组里的各个项倒着传递给你的新数组newArr[]。


  • 晓松aa 提问者 #1
    好晕啊 !!!!
    2017-09-24 16:48:54
  • 卡布琦诺 回复 提问者 晓松aa #2
    T_T建议你好好把课程温故一下,整理一下思路吧,学习要把基础打好,祝学习愉快!
    2017-09-25 09:41:39
  • Tingo 回复 提问者 晓松aa #3
    以本题目为例子 arr.length-i-1返回的是Number值, arr.length 为8(length从1开始计算)第一次循环i为0,-1得7 arr[ ]方括号里的Number值就代表了这个数组里的位置,记得要从0开始。把上面的7放进来就是arr的第8个位置,值是数字8。 然后随着i递增后,就形成了倒序。 newArr[i]的值就是上边每一次循环倒序的值赋予进来了... newArr[i]=arr[arr.length-i-1]大概是这个意思。
    2017-09-26 15:05:52
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师