千家信息网

js数组连续筛选处理方法是什么

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要讲解了"js数组连续筛选处理方法是什么",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"js数组连续筛选处理方法是什么"吧!算法面试题:有一个
千家信息网最后更新 2026年11月03日js数组连续筛选处理方法是什么

这篇文章主要讲解了"js数组连续筛选处理方法是什么",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"js数组连续筛选处理方法是什么"吧!

算法面试题:

有一个数组[1,1,1,2,3,4,5,8,10,22,24,25,26,66],请写一个方法把数组变成[1,1,[1,2,3,4,5],8,10,22,[24,25,26],66]

大体思路就是循环遍历,每次遍历判断当前项是否与前一项差值为1,这里需要考虑若结果为1,如何处理,结果不为1如何处理。

结果不为1,我们可以直接将当前项插入结果数组,但是这里我们需要考虑边界问题,我们设置两个变量,第一个变量数组长度len,第二个变量数组遍历开始的位置i,为了方便,我们将i设置为1。

此时代码如下:

var len = arr.length;
var res = [];
for (var i = 1; i <= len; i++) {
// something
}

加上判断逻辑:

var len = arr.length;
var res = [];
for (var i = 1; i <= len; i++) {
if(arr[i]-arr[i-1]!==1){
// someting
}else{
// someting
}
}

接下来如何做呢?

我们可以这么干,再次声明一个标记变量j,j的初始值为0;

此时我们再次观察一下需要处理的数组:

[1,1,1,2,3,4,5,8,10,22,24,25,26,66]

通过观察数组我们可以发现,当我们循环遍历每一项,从脚标1开始,如果当前项与前一项的差值不为1,我们可以直接将前一项推入结果数组,并标记此时的i值,即将i值赋值为j来保存。

如果差值等于1,什么也不做,直接跳过,再次观察上面的数组,当判断遇到:"1,2,3,4,5",这几项时,直接跳过,此时res的结果是[1,1],之后接着循环,当循环遍历判断8-5时,我们需要将1,2,3,4,5作为一个数组整体推入结果数组。

此时发现j的值为2,i的值为7,我们只需要将原数组中第二项到第七项(不包括第七项)截取出来,塞进结果数组,并更新j值。

那么在代码中执行时,何时塞入当前项(前一项),何时塞入截取的的数组呢?可以根据i和j的差值来判断,若i-j的差值大于一,则截取原数组j到i的结果塞入结果数组,代码如下:

var arr = [1,1,1,2,3,4,5,8,10,22,24,25,26,66]
var len = arr.length
var i = 1, j = 0
var rst = []
for(; i <= len; i++) {
if(arr[i]-arr[i-1] !== 1) {
i-j===1 ? rst.push(arr[j]) : rst.push(arr.slice(j, i))
j = i
}
}
console.log(rst);

代码里用到了一个三元运算符,通过判断i与j的差值来判断向数组中塞入何值。

感谢各位的阅读,以上就是"js数组连续筛选处理方法是什么"的内容了,经过本文的学习后,相信大家对js数组连续筛选处理方法是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

数组 结果 差值 方法 处理 代码 前项 变量 循环 再次 学习 观察 内容 就是 思路 标记 问题 接下来 两个 位置 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技企业 互联网佳科技有限公司 互联网科技公司税收优惠 致骋互联网科技 远拓互联网科技 中国科技互联网公司收入 宁夏众和广鑫互联网科技有限公司 互联网媒体平台算高科技产业 深圳市优智互联网科技有限公司 互联网保险科技创业 互联网科技人工智能实验室 互联网科技和法律行业 怎样加入科技互联网 互联网金融科技公司的优势 梅州GM互联网络科技有限公司 有人说阿里系是互联网科技企业 易企秀互联网科技是做什么的 科技互联网行业投资研究 江苏互联网智能科技产品出厂价 科技互联网专业务虚会材料 湖北九亚互联网络科技有限公司 上海睿民互联网科技有限公司 科技金融是不是互联网金融 互联网科技缩写 科技伦理 互联网公司 须眉科技是互联网公司吗 宁夏众和广鑫互联网科技有限公司 互联网与医疗科技 畅思互联网科技 互联网科技实习生岗位
0