数组和字符串总结

本文总结了JavaScript中数组的常用操作,包括Array.from()、Array.of()、Array.fill()、Array.copyWithin()等方法,以及数组的push()、pop()、sort()等基本操作。同时介绍了字符串的方法,如includes()、startsWith()、endsWith()、repeat()等,帮助理解数组和字符串的各种实用功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数组

Array.from()

用于将类数组结构转换为数组实例:

  • 第一个参数是一个类数组对象,即任何可迭代的结构或者有一个length属性和可索引元素的结构。

  • 第二个可选的映射函数参数,这个函数可以直接增强新数组的值。

  • 第三个可选参数用于指定映射函数中 this 的值 (箭头函数无法使用)。

将Set结构的数据转换为真正的数组:

Array.from还可以接受第二个参数,作用类似于数组的map方法,用来对每个元素进行处理,将处理后的值放入返回的数组。

将字符串转换为数组:

Array.of()

可以把一组参数转换为数组:

  • 这个方法的主要目的,是弥补数组构造函数Array()的不足。因为参数个数的不同,会导致Array()的行为有差异。并且不存在由于参数不同而导致的重载,它的行为非常统一

Array.fill()

向一个已有的数组中插入全部或部分相同的值:

  • 第一个参数是需要填充的值

  • 第二个参数是开始索引,可选,不选的话从0开始

  • 第三个参数是结束索引,可选,不选的话到末尾结束

  • 索引为负的话从数组末尾开始计算索引,也可以将负索引想象成数组长度加上它得到的一个正索引

Array.copyWithin()

按照指定范围浅复制数组中的部分内容,然后将它们插入到指定索引开始的位置

从数组的指定位置拷贝元素到数组的另一个指定位置中,返回修改后的数组,不会改变数组的长度。

Array.valueOf()

返回数组

Array.toString()

返回由每个值的等效字符串拼接而成的一个逗号分隔的字符串

Array.toLocaleString()

得到一个逗号分隔的数组值的字符串

Array.join()

将数组的所有元素连接成一个字符串

push()和pop()

前者可以接收任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度。后者数组末尾移除最后一项,减少数组的 length 值,然后返回移除的项。

shift()和unshift()

前者删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined 。后者将参数添加到原数组开头,并返回数组的长度 。

reverse()

反转数组的元素顺序

sort()

按升序排列数组项——即最小的值位于最前面,最大的值排在最后面

Array.concat()

合并两个数组并返回新的合并后的数组

Array.slice()

返回从原数组中指定开始下标到结束下标之间的项组成的新数组

Array.splice()

  • 删除:可以删除任意数量的项,只需指定 2 个参数:要删除的第一项的位置和要删除的项数。

  • 插入:可以向指定位置插入任意数量的项,只需提供 3 个参数:起始位置、 0(要删除的项数)和要插入的项。

  • 替换:可以向指定位置插入任意数量的项,且同时删除任意数量的项,只需指定 3 个参数:起始位置、要删除的项数和要插入的任意数量的项。插入的项数不必与删除的项数相等。

  • splice()方法始终都会返回一个数组,该数组中包含从原始数组中删除的项,如果没有删除任何项,则返回一个空数组。

Array.indexOf()和Array.lastdexOf()

  • indexOf():接收两个参数:要查找的项和(可选的)表示查找起点位置的索引。其中, 从数组的开头(位置 0)开始向后查找。

  • lastIndexOf:接收两个参数:要查找的项和(可选的)表示查找起点位置的索引。其中, 从数组的末尾开始向前查找。

Array.find()和Array.findex()

前者返回第一个匹配的元素,后者返回第一个匹配元素的索引,且都是从最小的索引开始。

Array.forEach()

对数组进行遍历循环,对数组中的每一项运行给定函数。这个方法没有返回值

Array.map()

对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。

Array.filter()

数组中的每一项运行给定函数,返回满足过滤条件组成的数组。

Array.every()

判断数组中每一项都是否满足条件,只有所有项都满足条件,才会返回true。

Array.some()

判断数组中是否存在满足条件的项,只要有一项满足条件,就会返回true。

Array.reduce()和Array.reduceRight()

前者方法从数组的第一项开始,逐个遍历到最后。后者 则从数组的最后一项开始,向前遍历到第一项。

字符串

includes()/startsWith()/endsWith()

  • includes():返回布尔值,表示是否找到了参数字符串。

  • startsWith():返回布尔值,表示参数字符串是否在原字符串的头部。

  • endsWith():返回布尔值,表示参数字符串是否在原字符串的尾部。

repeat()

构造并返回一个新字符串,表示将原字符串重复 n 次,并不会改变原字符串。

padStart()/padEnd()

前者用于头部补全,后者用于尾部补全。

trimStart()/trimEnd()

前者消除字符串头部的空格,后者消除尾部的空格。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值