js循环一维数组按指定长度截取为二维数组
//随便创建一个数组
let data = "abcdefghijklmnopkrstuvw12322999".split("");
//总数组
let productData=[];
//分数组
let falseData = [];
//小下标
let index = 0;
//如果是数组并且长度大于零
if(Array.isArray(data)&&data.length>0){
//循环原一维数组
for (let i = 0; i < data.length; i++) {
//把每个元素存进新的数组
falseData[index] = data[i];
//更新小下标
index++;
//当分数组累计够五个的时候
if ((i + 1)%5==0){
//小下标归零
index = 0;
//将分数组加入总数组
productData[(i+1) / 5] = falseData;
//清空分数组
falseData = [];
} else if (i == data.length - 1){//当循环到最后(就是原数组长度除以5有余数时)将剩余的元素也收个尾放到总数组中
productData[Math.floor((i + 1) / 5)+1] = falseData;
}
}
}
//删除总数组的第一个元素
productData.shift();
console.log(productData);
以上是复杂的,基本上没有使用自带函数的
下面是简便的方式
let data = "abcdefghijklmnopkrstuvw12322999".split("");
let productData=[];
let num = Math.ceil(data.length / 5);
for(let i= 0 ;i<num;i++){
productData.push(data.slice(i*5,i*5+5))
} console.log(productData);
都是截取5个元素为一个数组的
js循环一维数组按指定长度截取为二维数组的更多相关文章
- php 把一个一维数组的值依次赋值到二维数组中的每一项
Array( [0] => 1 [1] => 4 [2] => 2 [3] => 6 ) Array( [0] => Array ( [field_name] => ...
- 【C语言】构造长度可变的二维数组
#include <stdio.h> #include <malloc.h> #include <memory.h> int getArray(int ***p,i ...
- jQuery写省级联动列表,创造二维数组,以及如何存/调用二维数组中的数据
jQuery写省级联动列表,创造二维数组来存放数据,然后通过each来遍历调用,通过creatTxtNode创建文本节点,通过createElement创建标签option,在通过append将文本写 ...
- 通过循环按行顺序为一个5×5的二维数组a赋1到25的自然数,然后输出该数组。试编程。
- C二维字符数组的使用及如何获取二维数组的总行数和总列数!
#include <stdio.h> #include <stdlib.h> int main(){ char str[][30] = {"zhangsan" ...
- java基础5 (一维)数组和二维数组
本文知识点(目录): 一维数组(一维数组的概念.优点.格式.定义.初始化.遍历.常见异常.内存分析以及常见操作(找最大值.选择排序.冒泡排序等等)) 二维数组(二维数组的遍历.排序.查找.定义. ...
- 二维数组,锯齿数组和集合 C# 一维数组、二维数组(矩形数组)、交错数组(锯齿数组)的使用 C# 数组、多维数组(矩形数组)、锯齿数组(交叉数组)
二维数组,锯齿数组和集合 一.二维数组 二维数组:一维数组----豆角二维数组----表格 定义:1.一维数组:数据类型[] 数组变量名 = new 数据类型[数组长度];数据类型[] 数组变量名 = ...
- Java一维数组二维数组详解API
所谓数组,是有序的元素序列. 若将有限个类型相同的变量的集合命名,那么这个名称为数组名.组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量.用于区分数组的各个元素的数字编号称为下标 ...
- JS的二维数组
今天,记录一下JS的二位数组,并附上例题. 一.二维数组的本质:数组中的元素又是数组. 其实,我们都见过这样的二维数组,只不过没在意罢了,例如: var arr = [[1,2,4,6],[2,4,7 ...
随机推荐
- 【Henu ACM Round #12 C】 Alice, Bob, Two Teams
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 考虑任意两个字符串(a,b) 假设a在b的前面 那么如果a+b>=b+a 这里的+表示字符串的链接 那么显然需要交换a,b的位 ...
- C# WPF开源控件库MaterialDesign介绍
介绍 1.由于前端时间萌发开发一个基础架构得WPF框架得想法, 然后考虑到一些界面层元素统一, 然后就无意间在GitHub上发现一个开源WPF UI, 于是下载下来了感觉不错. 官网地址:http:/ ...
- ELK+KAFKA安装部署指南
一.ELK 背景 通常,日志被分散的储存不同的设备上.如果你管理数十上百台服务器,你还在使用依次登录每台机器的传统方法查阅日志.这样是不是感觉很繁琐和效率低下.当务之急我们使用集中化的日志管理,例如: ...
- 【技能】Ext.Viewport 实现左三右一排列方式。
1.Extjs 布局非常是灵活.可是吐槽下CSS,太难重写,想自己重构一套都难哎... var viewport = new Ext.Viewport({ layout:'border', items ...
- WordPress出现Briefly unavailable for scheduled maintenance. Check back in a minute. 的解决方法
WordPress出现 Briefly unavailable for scheduled maintenance. Check back in a minute. 解决方法: 登入FTP,然后把Wo ...
- 使用 Bluemix™ Live Sync 高速更新 Bluemix 上执行的应用程序实例
假设您要构建 Node.js 应用程序,那么能够使用 IBM® Bluemix® Live Sync 高速更新 Bluemix 上的应用程序实例,并像在桌面上进行操作一样进行开发,而无需又一次部署.执 ...
- Codefroces Round#427 div2
A. Key races time limit per test 1 second memory limit per test 256 megabytes input standard input o ...
- HTML基础第五讲---控制表格及其表项的对齐方式
转自:https://i.cnblogs.com/posts?categoryid=1121494 缺省情况下,表格在浏览器屏幕上左对齐,你可以使用<TABLE>的ALIGN属性来指定表格 ...
- Spark SQL概念学习系列之DataFrame与RDD的区别
不多说,直接上干货! DataFrame的推出,让Spark具备了处理大规模结构化数据的能力,不仅比原有的RDD转化方式更加简单易用,而且获得了更高的计算性能.Spark能够轻松实现从MySQL到Da ...
- Python的数组合并
https://blog.csdn.net/hustqb/article/details/78090365 TypeError: can only concatenate list (not &quo ...