JavaScrip基础(四):数组API

是小鱼呀·2024-04-10 15:31·19 次阅读

JavaScrip基础(四):数组API

数组转字符串#

1.1 string(arr): 将arr中每个元素转为字符串,用逗号分隔
固定套路:对数组拍照,用于鉴别是否数组被修改过
1.2 arr.join("连接符"):将arr中每个元素转为字符串,用自定义的连接符分隔

Copy
var chars=['H','e','l','l','o']; console.log(chars.join(""));//Hello console.log(chars.join("-"));//H-e-l-l-o

固定套路

  1. 将字符组成单词:chars.join(' ')->无缝拼接
  2. chars.join(' ')=="" 判断数组是空数组
  3. 将单词组成句子:chars.join(' ')
  4. 将数组转化为页面元素的内容

拼接和选取#

拼接#

不直接修改原数组,而返回新数组
concat() 拼接两个或更多的数组,并返回结果
var newArr=arr1.concat(值1,值2,arr2,值3,...)
将值1,值2和arr2 中每个元素以及值3都拼接到arr1的元素,之后,返回新数组
其中,arr2的元素会被先打散,再拼接

Copy
var arr1=[90,91,92]; var arr2=[80,81]; var arr4=arr1.concat(50,60,arr2); console.log(arr1);//现有数组值不变[90, 91, 92] console.log(arr4);//[[90, 91, 92, 50, 60, 80, 81]]

选取#

不直接修改原数组,而返回新数组
slice()返回现有数组的一个子数组
var subArr=arr.slice(starti,endi+1)
选取arr中starti位置开始,到endi结束的所有,(含头不含尾)
元素组成新数组返回,原数组保持不变

Copy
var arr1=[10,20,30,40,50]; var arr2=arr1.slice(1,4); //20,30,40 var arr3=arr1.slice(2); //30,40,50 var arr4=arr1.slice(-4,-2);//20,30 console.log(arr1);//现有数组元素不变

选取简写#

1.一直选取到结尾:可省略第二个参数
var arr5=arr1.slice(1);//20,30,40,50
2.如果选取的元素离结尾近,可用倒数下标
var arr6=arr1.slice(-1);//50
3.复制数组

Copy
arr.slice(0,arr.length); 可简写成:arr.slice();

3.修改数组

删除#

splice直接修改原数组
arr.splice(starti,n);
删除arr中starti位置开始的n个元素(不考虑含头不含尾)

Copy
var arr1=[10,20,30,40,50]; var arr4=arr1.splice(2,1); console.log(arr4);// 30, 保存被删除的元素组成的临时数组 console.log(arr1);// 10,20,40,50 修改后的数组

插入#

arr.splice(starti,0,值1,值2...)
在arr中starti位置,插入新值1,值2....原starti位置的值,以及其之后的值向后顺移。

Copy
var arr1=[10,20,30,40,50]; arr1.splice(2,0,21,22,23); console.log(arr1); // 10, 20, 21, 22, 23, 30, 40, 50

替换#

删除旧的,插入新的
arr.splice(starti,n,值1,值2...)
先删除arr中starti位置的n个值,再在starti位置插入新值
注意:删除的元素个数和插入的新元素个数不必一致

Copy
var arr1=[10,20,30,40,50]; arr1.splice(2,1,21,22,23); console.log(arr1);// 10, 20, 21, 22, 23, 40, 50

颠倒数组#

reverse()颠倒数组中元素的顺序
arr.reverse()
注意:仅负责原样颠倒数组,不负责排序

Copy
var arr1=[10,20,30,40,50]; arr1.reverse(); console.log(arr1);//50, 40, 30, 20, 10

排序#

将元素按从小到大的顺序重新排列
arr.sort(): 默认将所有元素转为字符串再排列
注意:只能排列字符串类型的元素

Copy
var arr1=['10','Hello',50,20,10,30,40]; arr1.sort(); console.log(arr1);//['10', 10, 20, 30, 40, 50, 'Hello']
posted @   是小鱼呀  阅读(19)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
点击右上角即可分享
微信分享提示
目录