javascript基础系列:数组常用方法解析

今天是比较特殊的日子,我们编程人员共同的节日,1024,祝每个编程人员节日快乐!

数组是javascript必不可少的一项,今天让我们来总结一下数组操作的一些常用方法。

数组及数组中常用方法

数组是对象类型的,属于特殊的对象

let ary = [

数组中常用的方法

  • 方法的作用和含义
  • 方法的实参(类型和含义)
  • 方法的返回值
  • 原来的数组是否发生改变
1. 实现数组增删改的方法

这一部分方法都会修改原有的数组

push

push:向数组末尾添加内容 @params 多个任意类型 @return 新增后数组的长度

let ary = [

unshift

unshift:向数组开始位置添加内容 @params 多个任意类型 @return 新增后数组的长度

let ary = [

shift

shift:删除数组中的第一项 @params @return 删除的那一项

let ary = [

基于原生js中的delete,把数组当成普通的对象,确实可以删除掉某一项内容,但是不会影响数组本身的结构特点(length长度不会跟着修改),真实项目中杜绝这样的删除使用
pop

pop:删除数组中的最后一项 @params

@return 删除的那一项

let ary = [

基于原生js让数组长度去掉一位,默认删除最后一项

let ary = [

splice

splice:实现数组的增加、删除、修改 @params n, m都是数字, 从索引n开始删除m个元素(m不写,是删除到末尾) n,m,x , 从索引n开始删除m个元素,用x占用删除的部分 n, 0, x从索引n开始,一个都不删,把x放到索引n的前面 @return 把删除的部分用新数组存储起来返回

let ary = [
2. 数组的查询和拼接

此组方法,原来数组不会改变

slice

slice: 实现数组的查询 @params n, m都是数字,从索引n开始,找到索引为m的地方(不包括m) @return 把找到的内容以一个新数组的形式返回

let ary = [

concat

slice: 实现数组的拼接 @params 多个热任意类型值 @return 拼接后新的数组(原来的数组不变)

let ary1 = [
3. 把数组转化为字符串

原有数组不变

toString

toString: 把数组转换为字符串 @params @return 转换后的字符串,每一项用逗号分隔(原来的数组不变)

let ary = [

join

join: 把数组转换为字符串 @params 指定的分隔符(字符串格式) @return 转换后的字符串,每一项用指定分隔符分隔(原来的数组不变)

let ary = [
4. 检测数组中是否包含某一项

indexOf/lastIndexOf

indexOf/lastIndexOf: 检测当前项在数组中第一次或者最后一次索引值,(在ie6-8中不兼容) @params 要检索的这一项内容 @return 这一项出现的位置索引值(数字),如果数组中没有这一项,返回的结果是-1

let ary = [
5. 数组的排序或者排列

reverse

reverse:把数组倒过来排列 @return 排列后的新数组,原来的数组改变

let ary = [

sort

sort:实现数组的排序 @params 可以没有,也可以是个函数 @return 排列后的新数组,原来的数组改变

如果不传参数,是无法处理10以上的数字排序(它默认都是按照第一个字符来排)

// 想要实现多位数正常排序,需要给sort传递一个函数,函数中返回a-b升序,返回b-a实现降序
6. 遍历数组中的每一项方法

forEach

forEach: 遍历数组中的每一项内容 @params 回调函数 @return 原来的数组不变

let ary = [

map
filter
find
reduce
some
every

数组中的去重

1. 方案一
  1. 循环原有数组中的每一项,每拿到一项都往新数组中添加
  2. 添加之前验证新数组中是否存在这一项,不存在再增加
let ary = [

2. 方案二
  1. 先分别拿出数组中的每一项
  2. 用这一项和它后面的每一项依次进行比较,如果遇到和当前项相同的,则在原来数组中把这一项从数组中删除,用splice方法
var ary = [

3. 数组中去重比较好的方法
let ary = [

基于splice实现删除性能不好:当前项被删除后,后面的每一项的索引都要向前提一位,如果后面内容过多,一定影响性能
实现数组去重的方法

unique: 实现数组去重的方法 @params ary[Array]要去重的数组 @return [Array] 去重后的数组

function unique(ary){
4. 基于ES6的Set去重方法
let ary = [

es6删除数组某一项_javascript基础系列:数组常用方法解析相关推荐

  1. es6删除数组某项_javascript基础系列:数组常用方法解析

    javascript基础系列:数组常用方法解析 今天是比较特殊的日子,我们编程人员共同的节日,1024,祝每个编程人员节日快乐! 数组是javascript必不可少的一项,今天让我们来总结一下数组操作 ...

  2. es6删除数组某一项_JavaScript:集合与数组,重要但你不知道的ES6数据类型

    全文共3313字,预计学习时长10分钟 图源:Unsplash Set(集合)对象类型于2015年在ECMAScript*规范中提出,可以在 Node.js和大部分浏览器中使用. *ECMA是Euro ...

  3. php 二维数组去除一项,PHP二维数组提取函数----把不需要的数据剔除

    首先说明一些这个函数的应用场景,比如说你得到的数据是个二维数组,里面的很多成员其实是不必要的,比如说api调用后不必要给别人返回一些用不到的垃圾数据吧,如下是代码. /* * delMemberGet ...

  4. Java基础系列之常用方法底层实现

    sleep(time) 挂起线程(释放cpu)并修改其运行状态 用sleep()提供的参数来设置一个定时器. 当时间结束,定时器会触发,内核收到中断后修改进程(或线程)的运行状态.例如线程会被标志为就 ...

  5. Go语言实战之数组的内部实现和基础功能

    写在前面 嗯,学习GO,所以有了这篇文章 博文内容为<GO语言实战>读书笔记之一 主要涉及数组相关知识 世上除了爹娘,再没有人是理所应当对你好的. --烽火戏诸侯<剑来> 数组 ...

  6. javascript基础系列(入门前须知)

    -----------------------小历史---------------------------- javascript与java是两种语言,他们的创作公司不同,JavaScript当时是借 ...

  7. php 数组与数组之间去重,PHP开发中一维数组与二维数组去重功能实现教程

    本篇文章讲述了PHP实现一维数组与二维数组去重功能示例.希望对在php学习和开发的同学有所帮助! 数组中重复项的去除 一维数组的重复项: 使用array_unique函数即可,使用实例如下: ? $a ...

  8. es6删除数组某一项_精学手撕系列——数组扁平化

    参考文章:面试官连环追问:数组拍平(扁平化) flat 方法实现 编者荐语: 在前端面试中,手写flat是非常基础的面试题,通常出现在笔试或者第一轮面试中,主要考察面试者基本的手写代码能力和JavaS ...

  9. es6删除数组某一项_什么时候用集合,什么时候用数组?一文帮你清晰界定

    全文共3313字,预计学习时长10分钟 图源:Unsplash Set(集合)对象类型于2015年在ECMAScript*规范中提出,可以在 Node.js和大部分浏览器中使用. *ECMA是Euro ...

最新文章

  1. 经典面试题: 为啥 ConcurrentHashMap 读操作不需要加锁?
  2. 院士:人一生有两个阶段最能逼出成果,一是拿博士学位,二是评正教授
  3. 使用基于注解的mybatis时,利用反射和注解生成sql语句
  4. springmvc教程(3)
  5. linux系统下使用xampp 丢失mysql root密码【xampp的初始密码为空】
  6. Mina2中IoService
  7. .NET Core实战项目之CMS 第十章 设计篇-系统开发框架设计
  8. Linux 字符设备驱动开发基础(五)—— ioremap() 函数解析
  9. 《设计模式其实很简单》
  10. (88)FPGA面试题-使用Verilog HDL编写二进制转格雷码
  11. 如何默认选择一个单选按钮? [重复]
  12. 如何使用python将二维数组去重呢?
  13. 2021计算机考研408真题和答案(回忆版)
  14. SSD的TRIM原理及实践
  15. 视频切割:python将视频文件按秒存储成图片
  16. 论文翻译:《一个包容性设计的具体例子:聋人导向可访问性》
  17. C++数组连接求能被7整除的数
  18. Topic test not present in metadata after 60000 ms
  19. 谷歌404页面html,简洁404页面HTML好看的404错误页源码
  20. SAP BDC 数据导入

热门文章

  1. Ubuntu下安装zsteg隐写工具
  2. Python基础教程:format 格式化字符串用法
  3. Python定义函数的三种方式
  4. Python 输入输出
  5. Python itertools 操作迭代对象
  6. python 使用 requests 做 http 请求
  7. 微型计算机内存不能用指令修改的部分,在微型计算机内存储器中,不能用指令修改其存储内容的部分是什么?...
  8. php 时钟函数,使用PHP的日期与时间函数技巧
  9. 如何查看Intel Realsense D435 状态log文件
  10. python中列表 元组 字典 集合的区别