js for循环中 is not a function报错

function largestOfFour(arr) {

  var outputArr = [];

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

    var newArray = arr[i].sort(function(a,b){

      return b-a;

    });

    outputArr.push(newArray[0]); //这样是正确的

   // outputArr = outputArr.push(newArray[0]); 为什么这样写是错误的? 


  }

  return outputArr;

}


哆啦的时光机
浏览 1712回答 2
2回答

小怪兽爱吃肉

outputArr已经变成了一个number类型,没有push方法了。

蝴蝶刀刀

首先你要理解push的意思,push()是向数组的末尾添加一个或多个元素,并返回新的长度。js的pop(),shift(),unshift(),push()都是操作数组后返回的是新数组的长度。所以outputArr = outputArr.push(newArray[0]);后outputArr就相当于=1了,所以无法进行push而报错的
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript