常用的几个数组操作方法
1.取余分割数组
var chartArr = [1, 2, 3, 4, 5, 6, 7]; Array.prototype.splitArray = function(num) { var m = this; var currData = []; var doneData = []; for (var i = 0; i < m.length; i++) { currData.push(m[i]); if (i != 0 && (i + 1) % 4 == 0 || i == m.length - 1) { doneData.push(currData); currData = []; }; }; if (doneData.length > 0) { return doneData; } else { return false; }; }; var newArr = chartArr.splitArray(4);
2. 数组去重
Array.prototype.unique = function() { var arr = []; var obj = {}; for (var i = 0; i < this.length; i++) { if (!obj[this[i]]) { arr.push(this[i]); obj[this[i]] = i + 1; }; }; return arr; }; var arr = [112, 112, 34, '你好', 112, 112, 34, '你好', 'str', 'str1']; console.log(arr.unique());
3. 数组反向(其实reverse也可以)
Array.prototype.resore = function() {
var newArr = [];
for (var i = this.length - 1; i >= 0; i--) {
newArr.push(this[i]);
}
return newArr;
};
var res = chartArr.resore();
console.log(res);
4.冒泡排序
var sorArr = [0, 5, 8, 4, 3, 1, 2];
Array.prototype.sortArr = function(arr) {
for (var i = 0; i < arr.length; i++) {
for(var j=i+1;j<arr.length;j++){
var cur = arr[i];
if(cur>arr[j]){
var ind = arr[j];
arr[j] = cur;
arr[i] = ind;
}
};
};
return arr;
};
var sor = sorArr.sortArr(sorArr);
console.log(sor);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?