数组1,2,3,4,5通过该函数反转后,输出的是5,4,3,2,1

数组1,2,3,4,5通过该函数反转后,输出的是5,4,3,2,1

unction arrReverse(arr){

var newArr=[];

for(var i=0;i<arr.length;i++){

     arr[i]=newArr;


}



}


document.write(arrReverse([1,2,3,4,5,6,7,8]));

写不下去了??、代码应该写啥???

正在回答 回答被采纳积分+1

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

4回答
爱你一生的我 2018-01-01 16:48:37

<script>

    function arrReverse(arr){

        var newArr=[];

        for(var i=0;i<arr.length;i++){

           newArr.unshift(arr[i]); 

        }

        return newArr;

    }

    document.write(arrReverse([1,2,3,4,5,6,7,8]));

</script>

有知道的告诉下  为何把document.write()就不显示了


  • document.write()这里括号不正确的哦~应该是英文状态下的,你这个应该是半角状态下的哦~
    2018-01-01 18:28:28
好帮手慕糖 2017-10-26 18:01:01

你好,原理就是,unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。

例:for循环遍历arr,第一个输出的元素是1,然后把这个1插入到newArr这个数组中,现在这个数组还是空的,所以不管是开头添加,还是后面添加,得到的都是newArr=[1],然后arr输出第二个元素,这时,newArr这个数组中开头插入一个元素就是,newArr=[2,1]以此类推,就实现了翻转呀。可以结合代码理解下哟;

祝学习愉快~


  • 提问者 慕丝7347533 #1
    谢谢老师,,看懂啦么么哒
    2017-10-27 14:24:10
卡布琦诺 2017-10-25 16:53:05

使用unshift() 方法向数组的开头添加一个或更多元素,然后再使用 document.write(arrReverse([1,2,3,4,5,6,7,8]));中的arrReverse()方法将其顺序进行颠倒。就是5、4、3、2、1了。

  • 提问者 慕丝7347533 #1
    var arr=[1,2,3,4,5,6,7,8]; var newarr=arr.reverse(); console.log(newarr);老师我知道可以用reverse 方法,我问的是这道题中用unshift,看不懂解释一下原理。老师说的arrreverse()您说的这个是定义的变量名........
    2017-10-26 17:52:15
好帮手慕糖 2017-10-15 15:28:36

你好,可参考如下代码:

<script>
    function arrReverse(arr){
        var newArr=[];
        for(var i=0;i<arr.length;i++){
           newArr.unshift(arr[i]); 
        }
        return newArr;
    }
    document.write(arrReverse([1,2,3,4,5,6,7,8]));
</script>

祝学习愉快~

  • 提问者 慕丝7347533 #1
    不懂 为什么用unshift???这个不是把值顺序添加在开头吗??把arr[0]的值放在开头,不也还是1.2。3。4.。。。。吗??、
    2017-10-25 16:38:39
  • 提问者 慕丝7347533 #2
    老师???在不??这个代码为什么用unshift()方法就可以实现倒转??unshift()方法不是把值顺序放在开头吗???,,,用reverse()方法直接倒转我也会,但是老师这个用unshift()原理是什么???? var arr=[1,2,3,4,5,6,7,8]; var newarr=arr.reverse(); console.log(newarr);
    2017-10-26 17:54:36
  • 原来Unshift 这样用,每次向newArr的数组头添加新的元素,而for却指向下一个元素,这样 先入后出
    2018-04-19 13:12:33
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
JavaScript基础入门 2018
  • 参与学习       547    人
  • 提交作业       206    份
  • 解答问题       640    个

JavaScript作为前端学习中的一个重要组成部分,本课程将带领你从最基础的语法开始,学习js的流程控制语句、函数、内置对象、DOM基础、DOM事件、BOM基础以及经典的js案例--轮播图。

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

在线咨询

领取优惠

免费试听

领取大纲

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