JS数组方法(实习使用实例或可能用到的地方)

文章详细介绍了JavaScript中常见的数组方法,如push(),pop(),unshift(),shift(),isArray()等,以及它们在Vue组件中的实际应用,如数据筛选、删除和操作数组。还探讨了其他如map(),filter(),every(),some()等高级方法,以及如何使用这些方法进行数组的遍历、修改和操作。

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

1. push()
push方法可以向数组的末尾添加一个或者多个元素,并返回新的长度.

this.$modal.confirm('是否确认删除').then(function () {
                const idsArr = []
                idsArr.push(idsDel)
                return delData(idsArr);
            }).then(() => {
                this.getList();
                this.$modal.msgSuccess("删除成功");
            }).catch(() => { });

一个删除实例idsDel为需要删除值的id,将他添加到数组中返回给后端

2. pop()
pop() 方法用于删除并返回数组的最后一个元素。

3. unshift()
unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。

4. shift()
shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。

5. isArray()
isArray() 这个方法用来判断一个对象是不是数组,是的话返回true,否则返回false

6. map()
map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。

map() 方法按照原始数组元素顺序依次处理元素。

参数:currentValue当前元素的值

​ index当前元素的索引值

​ arr当前元素属于的数组对象

handleSelectionChange(val) {
            this.selectData = val;//存储选中的数据
            if (this.selectData.length == 0) {
                this.isDisabled = 1;
            } else if (this.selectData.length > 0) {
                this.isDisabled = 0;
            }
            // console.log(this.selectData);
            const deldata = JSON.parse(JSON.stringify(this.selectData));
            // console.log(deldata);
            this.delid = deldata.map(item => item.id).join(',');

7. filter()
filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。

filter() 不会对空数组进行检测。

filter() 不会改变原始数组。

参数:currentValue当前元素的值

​ index当前元素的索引值

​ arr当前元素属于的数组对象

8. every()
every() 方法用于检测数组所有元素是否都符合指定条件(通过函数提供)。

every() 方法使用指定函数检测数组中的所有元素:

如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。
如果所有元素都满足条件,则返回 true。
every() 不会对空数组进行检测。

every() 不会改变原始数组。

参数:currentValue当前元素的值

​ index当前元素的索引值

​ arr当前元素属于的数组对象

9. some()
some() 方法用于检测数组中的元素是否满足指定条件(函数提供)。

some() 方法会依次执行数组的每个元素:

如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
如果没有满足条件的元素,则返回false。
some() 不会对空数组进行检测。

some() 不会改变原始数组。

参数:currentValue当前元素的值

​ index当前元素的索引值

​ arr当前元素属于的数组对象

10. splice()
splice() 方法用于添加或删除数组中的元素。

这种方法会改变原始数组。

如果仅删除一个元素,则返回一个元素的数组。 如果未删除任何元素,则返回空数组。

参数:index 必须,规定从何处添加/删除元素。该参数是开始插入和删除的数组元素的下标,必须是数字

​ howmany 可选,规定应该删除多少元素。必须是数字,但可以是“0”,如果为规定此参数,则删除从index开始到原数组结 尾的所有元素。

​ item…itemX 可选,要添加到数组的新元素


11. slice()
slice() 方法可从已有的数组中返回选定的元素。

slice()方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。

slice() 方法不会改变原始数组。

参数:start 规定从何处开始选取。如果该参数为负数,则表示从原数组的倒数第几个元素开始提取,slice(-2) 表示提取原数组中 的倒数第二个元素到最后一个元素(包含最后一个元素)。

​ end() 规定从何处结束选取。没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果该参数为负数, 则它表示在原数组中的倒数第几个元素结束抽取


12. indexOf()
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。

如果没有找到匹配的字符串则返回 -1。

indexOf() 方法区分大小写。

参数:search value 必须,规定需要检查的字符串值

​ start 可选,规定在自负串开始检索的位置,如果省略,则将从字符串的首字符开始检索

13. includes()
includes() 方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。

参数:searchElement 必须,需要查找的元素值

​ fromIndex 从该索引处开始查找 searchElement。如果为负值,则按升序从 array.length + fromIndex 的索引开始搜索。默认为0。

14. concat()
concat() 方法用于连接两个或多个数组。

该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。

15. join()
join() 方法用于把数组中的所有元素放入一个字符串。

该元素是通过指定的分隔符进行分隔的。

16. split()
split() 方法用于把一个字符串分割成字符串数组。

split() 方法不改变原始字符串。

参数:separator 可选。字符串或正则表达式,从该参数指定的地方分割 string Object。

​ limit 可选。该参数可指定返回的数组的最大长度。

17. forEach()
forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。

18. sort()
sort() 方法用于对数组的元素进行排序。

数组在原数组上进行排序,不生成副本。

19. reverse()
reverse() 方法用于颠倒数组中元素的顺序。

20. find()
find() 方法返回通过测试(函数内判断)的数组的第一个元素的值。

find() 方法为数组中的每个元素都调用一次函数执行:

当数组中的元素在测试条件时返回 true 时, find() 返回符合条件的元素,之后的值不会再调用执行函数。
如果没有符合条件的元素返回 undefined
find() 对于空数组,函数是不会执行的。

find() 并没有改变数组的原始值。

21. findIndex()
findIndex() 方法返回传入一个测试条件(函数)符合条件的数组第一个元素位置。

findIndex() 方法为数组中的每个元素都调用一次函数执行:

当数组中的元素在测试条件时返回 true 时, findIndex() 返回符合条件的元素的索引位置,之后的值不会再调用执行函数。
如果没有符合条件的元素返回 -1
findIndex() 对于空数组,函数是不会执行的。

findIndex() 并没有改变数组的原始值。

22. fill()
fill() 方法用于将一个固定值替换数组的元素。

参数:value 必须,填充的值

​ start 可选,开始填充的位置

​ end 可选,停止填充的位置,默认为array.length

23. keys()、values()、entries()
keys()是对键名的遍历、values()对键值的遍历、entries()是对键值对的遍历。

<el-form-item label="标准状态:" prop="a000">
                    <el-select v-model="queryParams.a000" placeholder="请选择">
                        <el-option v-for="item in bzztOptions" :key="item.value" :label="item.label"
                            :value="item.value">
                        </el-option>
                    </el-select>
                </el-form-item>

遍历数组对象option得到下拉列表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值