首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何编写一个以数组为参数的函数,它返回一个新的数组,其中包含原始数组的所有值,但顺序相反

我如何编写一个以数组为参数的函数,它返回一个新的数组,其中包含原始数组的所有值,但顺序相反
EN

Stack Overflow用户
提问于 2021-08-13 08:25:57
回答 4查看 61关注 0票数 0

我刚刚开始了一个全栈web开发训练营,因为这是我喜欢的东西,我真的很想学习,我需要一些指导,我自己浏览互联网有点困惑。但是,我真的没有很多钱,所以,这是我能找到的最便宜的训练营,也就是说,所有的东西都是预先录制的,而且没有太多来自老师的个人关注。所以,这就是我来这里的原因。对于CSS和HTML,我真的没有问题,但javascript有点令人困惑,我知道我正在使用非常简单的函数,但我无法让它们工作。我必须编写一个接受数组的函数,然后从该数组中创建一个新的数组,但顺序相反。我试过了

代码语言:javascript
复制
function takeAll(array){
    var newArray = [array.reverse()];
    console.log(newArray)
    return newArray;
}

但是我得到了这个错误,我不知道如何解决它。VM97:2 Uncaught TypeError: array.reverse is not a function at takeAll (<anonymous>:2:27) at <anonymous>:1:1

我想反向函数已经被预先构建好了,我不知道为什么我会得到它。

EN

回答 4

Stack Overflow用户

发布于 2021-08-13 08:32:19

如果您更改了行,您的函数应该可以工作

代码语言:javascript
复制
[array.reverse()]

代码语言:javascript
复制
array.reverse()

否则,您最终将得到类似于[3,2,1]的输出。

代码语言:javascript
复制
function takeAll(array) {
    console.log("takeAll: IsArray:", Array.isArray(array));
    return array.reverse();
}

const input = [1,2,3];
console.log('Input:', input);
console.log('Output:', takeAll(input));

票数 1
EN

Stack Overflow用户

发布于 2021-08-13 08:35:04

reverse()将返回一个数组。您不需要在那里添加[]。

代码语言:javascript
复制
function takeAll(array){
    var newArray = array.reverse();
    console.log(newArray)
    return newArray;
}

takeAll([1,3,4,5]);

票数 1
EN

Stack Overflow用户

发布于 2021-08-13 08:40:53

在你的函数中,你返回了一个包含另一个数组的数组,我不认为这是你真正想要的。

您需要的代码如下:

代码语言:javascript
复制
function takeAll(array) { 
  return array.reverse() 
}

确保在你的函数中传递一个数组。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68769079

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档