2-9编程

2-9编程

 function arrReverse(arr){

        var newArr=[1,2,3,4,5,6,7,8];

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

           arr=newArr[1,2,3,4,5,6,7,8];

        }

      arr.sort(function(a,b){return b-a});

    }

   return arr;

运行不出

正在回答

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

4回答

有时你不必纠结题目为什么要让你那么做,就先按照老师给的意思做就行来,实际开发中,方式很多种,哪个合适就用,至于为什么要用for循环而不用排序,在这个例子中,个人认为for循环中用unshift前置插入要比排序算法效率要高一点,具体没测试过,感兴趣的话测试一下进行验证,在有一个原因就是,你没注意审题,老师是让你把值反转过来,所以,下面的兄弟用sort的写法是错误的。

还有,你这个写法肯定是错误的,我的写法是这样的,参考一下:

function arrReverse(arr){

        var newArr=[];

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

           //补充代码

        //   document.write(arr[i])

          newArr.unshift(arr[i])

        }

       //补充代码

      return newArr;

    }

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

这个时候for循环是必需的


kumayato 2017-04-11 12:07:09

你是想数组倒序再降序排列吗?

function arrReverse(arr){
   var result = arr.reverse();
   var newArr = result.sort(function (a,b) {
       return a<b
   })
   return newArr;
}

console.log(arrReverse([1,3,45,6,3,5,7]));


最外的红 2017-04-11 11:31:24

我是搞不懂自带的里面为何会有一个for循环,我感觉不需要那个循环啊,还是说透过那个循环有什么新的发现?



  • 这个实现肯定有很多种,它可能是希望你用for循环来处理,用for循环处理就可以用unshift来实现
    2017-04-27 01:45:37
  • 有时你不必纠结题目为什么要让你那么做,就先按照老师给的意思做就行来,实际开发中,方式很多种,哪个合适就用,至于为什么要用for循环而不用排序,在这个例子中,个人认为for循环中用unshift前置插入要比排序算法效率要高一点,具体没测试过,感兴趣的话测试一下进行验证,在有一个原因就是,你没注意审题,老师是让你把值反转过来,所以,下面的兄弟用sort的写法是错误的。 还有,你这个写法肯定是错误的,我的写法是这样的,参考一下: function arrReverse(arr){ var newArr=[]; for(var i=0;i<arr.length;i++){ //补充代码 // document.write(arr[i]) newArr.unshift(arr[i]) } //补充代码 return newArr; } document.write(arrReverse([1,2,3,4,5,6,7,8,9])); 这个时候for循环是必需的
    2017-04-27 02:10:16
Hbrsql 2017-04-11 10:46:37

function arrReverse(arr){

 var newArr=arr.sort(function(a,b){return b-a});

return newArr;

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

供参考

  • 你这样的写法是错误的,若我把数组改成[1,3,2,4,6]你的结果就是错的,老师是让你把结果反转
    2017-04-27 02:02:14
  • 谢谢指正. 题主的代码运行不出来,我把代码修改,达到可以运行. 但确实不能完全满足2-9编程题的要求.
    2017-05-01 17:22:58
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
HTML5与CSS3实现动态网页 2018
  • 参与学习       1887    人
  • 提交作业       4643    份
  • 解答问题       5760    个

有HTML和CSS基础,却不知道如何进阶?本路径带你通过系统学习,完成从“会做网页”到“做出好的动态网页”的蜕变,迈出成为前端工程师的第一步。

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

在线咨询

领取优惠

免费试听

领取大纲

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