ES6知识整理(4)--数组的扩展
最近工作比较忙,基本每天都会加班到很晚。处理一些客户端兼容问题以及提升用户体验的优化。也将近一周没更文了,现在继续es6的学习总结。
形式是3个点(...),能起到分割字符串和合并数组的作用
合并数组:(代替concat)

字符串转数组:

新面孔啊,之前都没听说过。
1.map结构:[key,value]结构

generator函数:(了解下即可)
go()是个遍历器对象

合并成组
(Array.of()方法与Array.from()方法有些类似,都是将传入的参数返回成数组,不同的是Array.of()的参数类型以及长度不固定限制,而Array.from的第一个参数类型有限制,第二个参数为可选参数)

find(回调函数):
返回数组中第一个符合条件的成员,没有就是undefined

findIndex(回调函数):
返回数组中第一个符合条件的成员的位置,没有就是-1
(value当前值,index当前位置,arr数组本身)

1个参数:所有的都变掉

多个参数:改变指定位置的值
(执行后会改变原有数组)
(超出位置不填充)

keys():遍历数组的下标

结果:

values():遍历数组的值
使用上面的arr
(这个函数需要引入babel-polyfill.js包才能运行 require或script引入)

(若不想引入包,通过keys能就能获取到values了)

结果:

entries():遍历键值对

结果:

也可以用来判断字符串的字符,返回boolean
代替indexOf()
比indexOf()更优化

没有值,连undefined都不是

es5的forEach()、filter()、every()、some()会跳过空位
forEach():遍历

结果:

filter():按条件筛选,返回一个新数组

every():检测数组的所有元素都符合条件,返回boolean

some():检测数组中是否有元素符合条件,返回boolean

但是map()会保留空位
map():符合条件的,返回一个新数组
而ES6中entries()、keys()、values()、find()和findIndex()会将空位处理成undefined。

坚持学习、总结、更文,才是常态。。。
----公众号:海瑞菌

ES6知识整理(4)--数组的扩展的更多相关文章
- Es6学习笔记(7)----数组的扩展
参考书<ECMAScript 6入门>http://es6.ruanyifeng.com/ 数组的扩展 1.扩展运算符:可以将数组转化成逗号隔离的单个参数...[1,2,3] //控制台运 ...
- ES6知识整理(5)--对象的扩展
个人开这个公众号的初心是为了积累知识,因此并没有做什么推广,再说自己也不知道怎么推广,推广之后又能干些什么.已经将近10天没发文章了,虽然每天都加班,但也不会一点时间都没有,有时还是会懒癌发作不想学习 ...
- ES6知识整理(3)--函数的扩展
只有整理过的学习才是有效的学习.也就是学习之后要使用和整理成文,才是真正的学到了... 最近上班有点忙的关系,于是文章更新会慢些.只有晚上加完班之后,空余时间才能学习整理.因此完成一篇也可能要几个晚上 ...
- ES6知识整理(1)--let和const命令
最近准备在业余空闲时间里一边学习ES6,一边整理相关知识.只有整理过的学习才是有效的学习.也就是学习之后要使用和整理成文,才是正在的学到了... 那么现在开始 LINK START!(首先是第一讲,前 ...
- ES6知识整理(2)--变量的解构赋值
最近准备在业余空闲时间里一边学习ES6,一边整理相关知识.只有整理过的学习才是有效的学习.也就是学习之后要使用和整理成文,才是真正的学到了... 上一篇是一个试水,现在接上. 变量提升 看了下朋友回复 ...
- ES6(阮一峰) 数组的扩展
1.扩展运算符 扩展运算符(spread)是三个点(...).它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列. console.log(1, ...[2, 3, 4], 5) // ...
- ES6学习笔记之数组的扩展
✏️1. 扩展运算符 扩展运算符(spread)是三个点(...),将一个数组转为用逗号分隔的参数序列. 普通用法 console.log(...[1,2,3]);//1 2 3 数组拷贝(普通类型深 ...
- ES6知识整理(10)--class的继承
(这是es6的第10篇文章.说真的这样的总结之后虽然直观了许多,但是消耗的时间有点长,或许是知识比较复杂的原因吧) 类的继承 有个A类,B类继承A类,那B类实例就可以使用A类实例的所以属性和方法.不包 ...
- ES6走一波 数组的扩展
Array flat 数组实例的扁平化方法(浏览器支持不佳) 建议使用 lodash的 flatten
随机推荐
- Spring boot 整合hive-jdbc导致无法启动的问题
使用Spring boot整合Hive,在启动Spring boot项目时,报出异常: 经过排查,是maven的包冲突引起的,具体做法,排除:jetty-all.hive-shims依赖包.对应的po ...
- 2019年UI和UX设计趋势:大概是最全的汇总了!
朋友们,很快,2018就要跟我们说
- Dotfuscator代码混淆工具的使用
关于Dotfuscator,VS自带了一个社区版的源代码保护工具,不过它只有基本的混淆命名的功能.专业版功能很多,可以混淆流程,密字符串,加入水印,程序签名等. 工具/原料 Dotfuscator ...
- python regularexpress1
//test.py 1 import re 2 3 print (re.search('www', 'www.myweb.com').span()) 4 print (re.search('com', ...
- eclipse签名使用的key文件(android生成keystore)
命令行(或终端)生成keystore文件 在命令行(或终端)输入命令: keytool -genkey -alias Gallery.keystore -keyalg RSA -validit ...
- servlet 的servletContext
- pandas常用函数
1. df.head(n): 显示数据前n行,不指定n,df.head则会显示所有的行 2. df.columns.values获取所有列索引的名称 3. df.column_name: 直接获取列c ...
- CentOS中利用Docker安装Redis
CentOS中利用Docker安装Redis 1.拉取镜像 #docker pull redis:4.0.10 2.加载镜像 #docker run -p 6379:6379 --name test- ...
- Windows 2012 IIS ASP.NET 安装
from:http://blog.darkthread.net/post-2013-11-29-iis8-asp-net-setup.aspx 專案動用了SignalR 2.0,在我的Windows ...
- html utf-8 中文乱码
刚才用ajax从记事本中读文档的时候,发现在页面上显示是乱码. 页面编码:<meta charset="utf-8"> 搞半天最后发现是记事本编码格式的问题,记事本默认 ...