js中数组排序和拼接问题(不涉及算法)
2021/10/6 17:11:20
本文主要是介绍js中数组排序和拼接问题(不涉及算法),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、数组排序的方式:正序、反序、随机排序
从上面的乱序我们可以看出,sort参数可以是一个函数!
具体细节可以看这个博主的介绍https://www.cnblogs.com/saifei/p/9043821.html
二、数组的拼接:主要使用的是concat方法
观察一下以上的三种场景输出的值到底是什么?
加上三个点就相当于ES6里面的Array.form语法。在ES6中Array.form是可以将字符串转换为数组的。
可以看到我们的concat不能将多维数组拼接起来。
三、删改的方法 slice 、splice(它俩最大的区别在于slice没有修改原数组,而splice修改了原数组)
3.1 Slice是用来返回一个新的数组,主要返回的是一个左闭右开的区间数组,一般传入两个参数,第二个参数可以不传,不传的话就相当于与一直到最后一位,如果传如最后一位,就相当于是起始位和结束位。当slice什么也不传的时候,是拷贝原数组。
slice是从一个数组中进行截断。并且规定起始位和终止位。如果传入一个参数,就相当于从起始位一直截断到最后。
slice也可以传入负数作为参数,也是遵循左开右闭的规则。
Slice还可以将字符串转换为新的数组
这就是ES6之前比较复杂的操作了,现在一般都用Array实现这一操作。将字符串改变成为数组。
3.2 Splice的用法
和slice最大的区别就是改变了原数组。
第一种情况:Splice不传入参数时,相当于返回一个空的数组(
上面表示的是删除元素之后的数组。如果没有删除元素,直接返回空。
)。不是和slice一样,拷贝原数组。
第二种情况:
当只有一个参数的时候,是起到截取操作的,左闭右开。和slice完全一样的。Slice支持负数的,同样的splice也支持负数
可以看到我们的原数组也发生了改变,在我们使用了splice之后,我们将原数组的长度进行了切割,上面的这个splice(0 ,6)表示的是将原数组从0开始阶段6位,然后返回的数组,就只剩下了后两位。
下面的这个方法是借鉴这个博主的方法,写的比较通俗易懂。
四、indexof lastindexof includes的使用
Indexof找的只是索引值,而includes找的是数组中是不是包含这个值,返回的是布尔值,如果数组中有这个值,那么就返回true,如果没有这个值,会返回false
五、find函数的使用
Find函数里面的参数是一个函数,我们需要给这个函数还要传入一个参数,最后返回函数里面参数所做的操作。比如这里面我们演奏找到数组中大于4的数。
前面的所有方法都是实例方法,不是静态方法(就是在构造器上面的),下面我们介绍的ES6语法都是静态方法,都是属于在构造器中定义的方法。关于什么是实例方法,什么是静态方法,什么是原型方法,参考网址:
https://www.bilibili.com/read/mobile?id=11991753,讲的很详细
六、Arrayof 和Arrayform方法的使用
我们可以看到Array(3)和Array(3,4,5)表达的不是一个意思,我们ES6语法为了统一,所以增加了Array.of的方法来进行优化,使得统一起来。都变成数组的形式。而Array.from表达的意思就是将字符串变成数组。
七、fill用法
如果不想都被填充掉,那么需要定义起始和结束的位置
从0开始到3结束,左闭右开,全部填充为6.
总结:
这篇关于js中数组排序和拼接问题(不涉及算法)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-21Vue3教程:新手入门到实践应用
- 2024-12-21VueRouter4教程:从入门到实践
- 2024-12-20Vue3项目实战:从入门到上手
- 2024-12-20Vue3项目实战:新手入门教程
- 2024-12-20VueRouter4项目实战:新手入门教程
- 2024-12-20如何实现JDBC和jsp的关系?-icode9专业技术文章分享
- 2024-12-20Vue项目中实现TagsView标签栏导航的简单教程
- 2024-12-20Vue3入门教程:从零开始搭建你的第一个Vue3项目
- 2024-12-20从零开始学习vueRouter4:基础教程
- 2024-12-20Vuex4课程:新手入门到上手实战全攻略