ES6学习之数组

简介: ES6学习之数组

数组创建

Array.of()

将参数中所有值作为元素形成数组。

参数值可为不同类型 ,参数为空时返回空数组

Array.from()

将类数组对象或可迭代对象转化为数组。

若参数含空位,则空位处填写undefined

参数:

Array.from(arrayLike[,mapFn[,thisArg]])

返回值为转换后的数组。

arrayLike

想要转换的类数组对象或可迭代对象。

mapFn

可选,map函数,用于对每个元素进行处理,放入数组的是处理后的元素。

thisArg

可选,用于指定map函数执行时的this对象。

类数组对象

一个类数组对象(1)必须含有length属性,且(2)元素属性名必须是数值或者是可转换为数值的字符。

没有length属性,则返回空数组。

元素属性名不为数值且无法转换为数值,返回长度为length 元素值为undefined的数组

//类数组对象
let array_like = {
    0:"apple",
    1:"banana",
    length:2
}

转换可迭代对象

转换map,转换set,转换字符串

扩展的方法

查找

find()

查找数组中符合条件的元素,若有多个符合条件的元素,则返回第一个元素。

findIndex()

查找数组中符合条件的元素索引,若有多个符合条件的元素,则返回第一个元素索引。

填充

fill()

将一定范围索引的数组元素内容填充为单个指定的值。

  • 参数1:用来填充的值
  • 参数2:被填充的起始索引
  • 参数3(可选):被填充的结束索引,默认为数组末尾
copyWithin()

将一定范围索引的数组元素修改为此数组另一指定范围索引的元素。

  • 参数1:被修改的起始索引
  • 参数2:被用来覆盖的数据的起始索引
  • 参数3(可选):被用来覆盖的数据的结束索引,默认为数组结尾

遍历

entries()

遍历键值对。

keys()

遍历键名。

values()

遍历键值。

包含

includes()

数组是否包含指定值。

注意:

与 Set 和 Map 的has 方法区分;

1、Set 的 has 方法用于查找值;

2、Map 的 has 方法用于查找键名。

嵌套数组转一维数组

flat()

1、指定转换的嵌套层数

2、不管嵌套多少层

3、自动跳过空位

flatMap()

先对数组中的每个元素进行处理,再对数组执行flat()方法。

1、参数1:遍历函数,该遍历函数可接受三个参数:当前元素、当前元素索引、原数组

2、参数2:指定遍历函数中 this 的指向

数组缓冲区

数组缓冲区是内存中的一段地址。

定型数组的基础。

实际字节数在创建时确定,之后只可修改其中的数据,不可修改大小。

相关文章
|
弹性计算 测试技术 网络安全
|
Ubuntu 机器人 语音技术
语音识别与语音控制的原理介绍
硬件平台 机器硬件:OriginBot(导航版/视觉版)PC主机:Windows(>=10)/Ubuntu(>=20.04)扩展硬件:X3语音版 运行案例 首先进入OriginBot主控系统,运行一下指令。请注意,部分操作OriginBot内暂未放入,请根据内容进行适当处理。 cd /userdata/dev_ws/ # 配置TogetheROS环境 source /opt/tros/setup.bash # 从tros.b的安装路径中拷贝出运行示例需要的配置文件。 cp -r /opt/tros/lib/hobot_audio/config/ . # 加载音频驱动,设备启动之后只
518 83
|
6月前
|
运维 监控 应用服务中间件
|
6月前
|
JavaScript 前端开发 Java
OpenGMS是什么?如何使用OpenGMS的建模与模拟工具(一)
只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
8月前
|
存储 算法 C语言
【C语言程序设计——函数】素数判定(头歌实践教学平台习题)【合集】
本内容介绍了编写一个判断素数的子函数的任务,涵盖循环控制与跳转语句、算术运算符(%)、以及素数的概念。任务要求在主函数中输入整数并输出是否为素数的信息。相关知识包括 `for` 和 `while` 循环、`break` 和 `continue` 语句、取余运算符 `%` 的使用及素数定义、分布规律和应用场景。编程要求根据提示补充代码,测试说明提供了输入输出示例,最后给出通关代码和测试结果。 任务核心:编写判断素数的子函数并在主函数中调用,涉及循环结构和条件判断。
375 23
|
关系型数据库 MySQL 数据库
MySql 数据库 - 重置数据库、重置初始密码方法,数据库初始化方法,长时间不用忘记密码暴力解决方法
MySql 数据库 - 重置数据库、重置初始密码方法,数据库初始化方法,长时间不用忘记密码暴力解决方法
1121 0
MySql 数据库 - 重置数据库、重置初始密码方法,数据库初始化方法,长时间不用忘记密码暴力解决方法
|
4月前
|
设计模式 存储 JavaScript
【设计模式】【行为型模式】迭代器模式(Iterator)
一、入门 什么是迭代器模式? 迭代器模式(Iterator Pattern)是一种行为设计模式,它提供了一种顺序访问聚合对象中元素的方法,而不需要暴露其底层表示。迭代器模式将遍历逻辑从聚合对象中分离出
109 11
|
SQL Java 数据库连接
MyBatis实现动态SQL更新
1. 复杂一点,通过 MyBatis 的拦截器机制,在 SQL 拼接的 prepare 阶段修改 SQL 语句,实现动态 SQL。 考虑到拦截器机制不需要修改过多代码,因此本文博主将带领大家学习如何利用 MyBatis 拦截器机制来优雅的实现这个需求。
378 0
|
存储 缓存 算法
【数据结构】队列(循环队列和链队列)详细讲解各种操作
【数据结构】队列(循环队列和链队列)详细讲解各种操作
1249 0
第1章 MATLAB R2020a概述——1.5 MATLAB文件管理
第1章 MATLAB R2020a概述——1.5 MATLAB文件管理