数组的方法
数组添加和删除
1.尾部添加和删除
push( ) 尾部添加,参数就是要添加的项;如果添加多个,用逗号隔开;原数组会改变,不需要赋值
pop( ) 尾部删除,不用写参数,返回的是删除的项
2.首部添加和删除
unshift( ) 头部添加,参数就是要添加的项;如果添加多个,用逗号隔开;原数组会改变,不需要赋值
shift( ) 头部删除,不用写参数,返回的是删除的项
3.splice( a,b,c,d...)方法
a:下标
b:个数 ( 为0,就是插入; 有数量,就是删除几个)
c,d... 替换的值
可以替换数组中,指定的值(从下标的开始) 返回的是替换掉的值
可以在指定位置插入新项( 插入是下标的前面插入)
可以删除( 删除是包括下标的)
例子: 可以替换数组中,指定的值(从下标的开始) 返回的是替换掉的值
var arr = ['a','b','c','d','e']; // 0 1 2 3 4
var arr1 = arr.splice(3,2,'x','y','z') console.log(arr); //['a', 'b', 'c', 'x', 'y', 'z'] console.log(arr1); //返回的是:替换掉的值['d', 'e']
例子: 可以在指定位置插入新项( 插入是下标的前面插入) 返回的是 [ ]
var arr = ['a','b','c','d','e']; // 0 1 2 3 4
var arr1 = arr.splice(1,0,'x','y','z') console.log(arr); //['a', 'x', 'y', 'z', 'b', 'c', 'd', 'e'] console.log(arr1); //返回的是:替换掉的值[ ]
例子: 可以删除( 删除是包括下标的) 返回的是删除的项
var arr = ['a','b','c','d','e']; // 0 1 2 3 4
var arr1 = arr.splice(1,1) console.log(arr); //['a', 'c', 'd', 'e'] console.log(arr1); //返回的是:替换掉的值[ 'b' ]
4.slice( a , b)方法 用于得到子串 (原数组不变,返回是新的数组) , 类似字符串的slice( )
a 下标 (包括a)
b 下标 ( 不包括b)
如果不提供第二个参数( b ),那么久截取到最后
5.数组的join( ) 方法 和 字符串的split( )方法
join( ) 原数组不改变
留空,默认为逗号分割,如同toString( ) 方法
例子:
var arr = [1,2,3,4,5,6]; var arr1 = arr.join(); var arr2 = arr.join('&'); console.log(arr); // [1, 2, 3, 4, 5, 6] console.log(arr1); // 1,2,3,4,5,6 console.log(arr2); // 1&2&3&4&5&6
split( ) 原数组不改变
不能留空
例子:
var str = '123456' var str1 = str.split() console.log(str1); // ['123456'] var str2 = str.split('') console.log(str2); // ['1', '2', '3', '4', '5', '6'] var str3 = str.split(' ') //有一个空格 console.log(str3); // ['123456'] console.log(str); // '123456'
6.concat( ) 方法 可以合并多个数组 , 不会改变原数组
var arr1 = [1,2,3]; var arr2 = [4,5]; var arr3 = [6,7,8]; var arr = arr1.concat(arr2); console.log(arr); // [1,2,3,4,5] console.log(arr1); // 原数组不改变 : [1,2,3] var arr4 = arr1.concat(arr2,arr3); console.log(arr4); // [1, 2, 3, 4, 5, 6, 7, 8]
7.reverse( ) 方法 把数组反一下顺序,直接改变原数组
var arr = [1,2,3,4,5] var arr1 = arr.reverse(); console.log(arr); // 会改变原数组: [5, 4, 3, 2, 1] console.log(arr1); // [5, 4, 3, 2, 1]
8. indexOf( ) 和 includes( ) 的区别
indexOf( ) 搜不到返回-1 ; 如果indexOf,有2个参数的话,是-1的,只能一个参数
includes( ) 搜不到 ,返回false
9.sort( function( a,b ){ } )
如果a大于b,那么就要调换位置,否则不变
例子:
var arr = [55,22,11,67,88,96,3,2,68]; arr.sort(function(a,b){ return a-b; //从小到大排的 }) console.log(arr); // [2, 3, 11, 22, 55, 67, 68, 88, 96] var arr1 = [55,22,11,67,88,96,3,2,68]; arr1.sort(function(a,b){ return b-a; //从大到小排的 }) console.log(arr1); // [96, 88, 68, 67, 55, 22, 11, 3, 2]
本文来自博客园,作者:杨建鑫,转载请注明原文链接:https://www.cnblogs.com/qd-lbxx/p/15775207.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了