Codewars-Snail(Javascript实现螺旋数组)
话不多说,直接上源码:
function snail(array) {var results = [];while (array.length > 0) {//使用shift返回当前数组中的第一个元素// 使用concat方法连接被弹出的第一个元素,将其放在最后一位results = results.concat(array.shift());//forEach方法进行数组的遍历array.forEach(function (current) {//使用pop方法弹出最后一个元素,并进行在数组尾添加该元素results.push(current.pop());});array.forEach(function (current) {//reverse() 方法用于颠倒数组中元素的顺序current.reverse();});//再次用于颠倒数组中元素的顺序array.reverse();}return results;
}
测试:
console.log(snail([[1, 2, 3],[4, 5, 6],[7, 8, 9]]));console.log(snail([[]]));console.log(snail([[1, 2, 3, 4, 5],[6, 7, 8, 9, 10],[11, 12, 13, 14, 15],[16, 17, 18, 19, 20],[21, 22, 23, 24, 25]]));
题目地址:https://www.codewars.com/kata/snail/train/javascript
Codewars-Snail(Javascript实现螺旋数组)相关推荐
- 如何在JavaScript中比较数组?
本文翻译自:How to compare arrays in JavaScript? I'd like to compare two arrays... ideally, efficiently. 我 ...
- 如何检查变量是否是JavaScript中的数组? [重复]
本文翻译自:How do you check if a variable is an array in JavaScript? [duplicate] This question already ha ...
- 遍历JavaScript中的数组
在Java中,可以使用for循环遍历数组中的对象,如下所示: String[] myStringArray = {"Hello", "World"}; for ...
- JavaScript对象和数组
在JavaScript中对象是一种数据结构,用于将数据和功能组织在一起,描述一类对象所具有的属性和方法. 对象是某个特定类型的实例.新对象是new操作符后跟一个关键字来实现的.构造函数本身就是一个函数 ...
- Javascript如何改变数组的长度?
修改数组长度 使用"数组名.length"可以获取或修改数组的长度.数组长度的计算方式为数组中元素的最大索引值加1,示例代码如下. var arr = ['a', 'b', 'c' ...
- JavaScript实现以数组形式返回斐波那契数列fibonacci算法(附完整源码)
JavaScript实现以数组形式返回斐波那契数列fibonacci算法(附完整源码) fibonacci.js完整源代码 fibonacci.js完整源代码 export default funct ...
- php js动态删除数组元素,javascript如何删除数组中的指定元素
js删除数组中的指定元素主要分为两步,首先判断数组中是否包含这个元素,然后再通过splice()方法来删除指定元素 本篇文章主要介绍的是如何通过javascript语言对数组中的指定元素进行删除的方法 ...
- javascript字典中添加数组_如何在JavaScript中使用数组方法:Mutator方法
JavaScript中的数组由元素列表组成.JavaScript有许多有用的内置方法来处理数组.修改原始数组的方法称为mutator方法,返回新值或表示的方法称为accessor方法.在本教程中,我们 ...
- JavaScript 对象与数组参考大全
http://www.cnblogs.com/meil/archive/2006/06/28/437527.html本文列举了各种JavaScript对象与数组,同时包括对上述每一对象或数组所完成工作 ...
最新文章
- Ubuntu Server对OpenStack的支持
- GARFIELD@02-10-2005
- feign调用session丢失解决方案
- PHP第五周答案,算法设计与分析第五周作业——Word Ladder
- 关于代码评审的微博讨论汇集
- RTP与RTCP协议介绍
- 保姆级带你深入阅读NAS-BERT
- 趣味菜单C语言,趣味C语言
- js设置radio 和checkbox 单选
- OA系统中公文流转简单思路
- LED灯随机亮起几个灯
- 中国制鞋机械行业调研与投资战略报告(2022版)
- gaster字体转换器_gaster语言翻译器
- UNITY读取图片素材的URL并使用
- Open Distro 初探
- 前台HTML现在预览附件
- jupyter notebook误删怎么办
- TestFlight上架流程
- amcharts嵌入到flex中
- 用matlab验证时域卷积,用MATLAB实现信号的时域卷积
热门文章
- 一文带你入门目前大热的图神经网络
- 彭博社“机器学习基础”视频教程已经全部搬到腾讯视频
- mysql安装数据自定义_mysql数据库自定义怎么安装
- 【Matplotlib】【Python】如何使用matplotlib颜色映射
- 顶尖!百度AI算法专家手把手带你论文复现打比赛!
- 年终总结 | 2019年人工智能+计算机视觉+深度学习笔记思维导图汇总
- 深度强化学习-DDPG算法原理和实现
- csh远程登录服务器,ubuntu远程连接服务器某一个用户(非root用户)出现sh: 1: source: not found...
- thinkphp漏洞_漏洞分析之thinkPHP反序列化:这就是黑客的世界吗
- 云服务器怎么把软件装上去_服务器:云服务器怎么设置301