如何创建一个反向数组函数?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何创建一个反向数组函数?相关的知识,希望对你有一定的参考价值。

我想写一个函数 reverseArray(),它接收一个数组作为参数,并返回一个新的数组,其中的元素以相反的顺序排列(而不使用内置方法).

谁能帮我看看我这里做错了什么?当我运行下面的代码时,它返回1。

const reverseArray=array=> {
let newArray=[];
for (let i=array.length-1 ; i>=0; i--){
return newArray.push(array[i])}
};

const array = ['sense.','make', 'all', 'will', 'This'];
console.log(reverseArray(array));
答案

你要返回的结果是 Array.push() 循环的第一个实例。根据MDN: Array.push() 返回。

方法被调用的对象的新长度属性。

https:/developer.mozilla.orgen-USdocsWebJavaScriptReferenceGlobal_ObjectsArraypush。

所以它是将一个元素推送到数组中,然后返回数组的长度(1)。

相反,在for循环中把所有元素加到数组中,然后返回数组本身。

const reverseArray = arr => {
  let newArr=[]
  for (let i=arr.length-1; i>=0; i--){
     newArr.push(arr[i])
  }
  return newArr
}

const arr = ['sense.','make', 'all', 'will', 'This']
console.log(reverseArray(arr))

以上是关于如何创建一个反向数组函数?的主要内容,如果未能解决你的问题,请参考以下文章

如何将此 JavaScript 代码片段翻译成 Parenscript?

如何使用片段反向移植?

如何将 r ggplot 图存储为 html 代码片段

web代码片段

几个关于js数组方法reduce的经典片段

自定义对话框片段