最近工作比较忙,基本每天都会加班到很晚。处理一些客户端兼容问题以及提升用户体验的优化。也将近一周没更文了,现在继续es6的学习总结。

上篇回顾

ES6知识整理(三)--函数的扩展

扩展运算符

形式是3个点(...),能起到分割字符串和合并数组的作用

合并数组:(代替concat)

字符串转数组:

Map与Se结构与Generator函数

新面孔啊,之前都没听说过。

1.map结构:[key,value]结构

generator函数:(了解下即可)

go()是个遍历器对象

Array.of() 一组值转为数组

合并成组

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

find()与findIndex() 返回数组成员

find(回调函数):

返回数组中第一个符合条件的成员,没有就是undefined

findIndex(回调函数):

返回数组中第一个符合条件的成员的位置,没有就是-1

(value当前值,index当前位置,arr数组本身)

fill()给定值填充数组

1个参数:所有的都变掉

多个参数:改变指定位置的值

(执行后会改变原有数组)

(超出位置不填充)

entries()、keys()、values()遍历数组

keys():遍历数组的下标

结果:

values():遍历数组的值

使用上面的arr

(这个函数需要引入babel-polyfill.js包才能运行 require或script引入)

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

结果:

entries():遍历键值对

结果:

includes() 判断是否存在

也可以用来判断字符串的字符,返回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)--数组的扩展的更多相关文章

  1. Es6学习笔记(7)----数组的扩展

    参考书<ECMAScript 6入门>http://es6.ruanyifeng.com/ 数组的扩展 1.扩展运算符:可以将数组转化成逗号隔离的单个参数...[1,2,3] //控制台运 ...

  2. ES6知识整理(5)--对象的扩展

    个人开这个公众号的初心是为了积累知识,因此并没有做什么推广,再说自己也不知道怎么推广,推广之后又能干些什么.已经将近10天没发文章了,虽然每天都加班,但也不会一点时间都没有,有时还是会懒癌发作不想学习 ...

  3. ES6知识整理(3)--函数的扩展

    只有整理过的学习才是有效的学习.也就是学习之后要使用和整理成文,才是真正的学到了... 最近上班有点忙的关系,于是文章更新会慢些.只有晚上加完班之后,空余时间才能学习整理.因此完成一篇也可能要几个晚上 ...

  4. ES6知识整理(1)--let和const命令

    最近准备在业余空闲时间里一边学习ES6,一边整理相关知识.只有整理过的学习才是有效的学习.也就是学习之后要使用和整理成文,才是正在的学到了... 那么现在开始 LINK START!(首先是第一讲,前 ...

  5. ES6知识整理(2)--变量的解构赋值

    最近准备在业余空闲时间里一边学习ES6,一边整理相关知识.只有整理过的学习才是有效的学习.也就是学习之后要使用和整理成文,才是真正的学到了... 上一篇是一个试水,现在接上. 变量提升 看了下朋友回复 ...

  6. ES6(阮一峰) 数组的扩展

    1.扩展运算符 扩展运算符(spread)是三个点(...).它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列. console.log(1, ...[2, 3, 4], 5) // ...

  7. ES6学习笔记之数组的扩展

    ✏️1. 扩展运算符 扩展运算符(spread)是三个点(...),将一个数组转为用逗号分隔的参数序列. 普通用法 console.log(...[1,2,3]);//1 2 3 数组拷贝(普通类型深 ...

  8. ES6知识整理(10)--class的继承

    (这是es6的第10篇文章.说真的这样的总结之后虽然直观了许多,但是消耗的时间有点长,或许是知识比较复杂的原因吧) 类的继承 有个A类,B类继承A类,那B类实例就可以使用A类实例的所以属性和方法.不包 ...

  9. ES6走一波 数组的扩展

    Array flat 数组实例的扁平化方法(浏览器支持不佳) 建议使用 lodash的 flatten

随机推荐

  1. 【LeetCode每天一题】String to Integer (atoi)(字符串转换成数字)

    Implement atoi which converts a string to an integer.The function first discards as many whitespace ...

  2. 亲爱的,我是一条Linux运维技术学习路径呀。

    根据我的经验,人在年轻时,最头疼的一件事就是决定自己这一生要做什么.在这方面,我倒没有什么具体的建议:干什么都可以,但最好不要写小说,这是和我抢饭碗.总而言之,干什么都是好的:但要干出个样子来,这才是 ...

  3. leetcode 93 复原IP地址

    IP地址,分成四段,每段是0-255,按照每段的长度分别为1,2,3下一段长度分别1,2,3再下一段......进行递归遍历,能满足条件的假如res中.比较难想到的就是假如有一段是三位的010是不符合 ...

  4. idc函数大全

    A80_addcA80_addcixA80_addciyA80_addixA80_addiyA80_cmpdA80_cmpiA80_im0A80_im1A80_im2A80_jrcA80_jrncA8 ...

  5. react native中使用ScrollableTabView

    第一步,下载依赖 npm install react-native-scrollable-tab-view --save 第二步,引入 import ScrollableTabView, { Scro ...

  6. 如何使用Apache log4net库与ASP.NET MVC 5日志记录

    在运行软件程序的时候,跟踪和监控日志是一种记录过程的好方法. 简介: 在运行软件程序的时候,跟踪和监控日志是一种记录过程的好方法.尤其在应用程序出错的时候,日志是我们最需要的文件.不管是在web,wi ...

  7. sql server case

    use mytest go exec p_city 2,4 exec p_city_cnt 2,3 select stuff((select ',' + city_id from cities for ...

  8. 7.线程id,优先级讲解

    1.线程id可以通过Thread对象的getId()方法得到,在线程出了问题,为什么CPU占用这么高的时候,查的时候我们可以在堆栈信息中找到对应线程,然后干掉该线程就好! 2.而线程对象的getNam ...

  9. Python 5 -- 模块

    模块 - 模块就是包含函数的文件,用于共享代码. 导入已有模块 # 导入整个模块 import random # 导入整个模块 print(random.randint(0,255)) #调用模块中的 ...

  10. Azure Messaging-ServiceBus Messaging消息队列技术系列1-基本概念和架构

    前段时间研究了Window Azure ServiceBus Messaging消息队列技术,搞了很多技术研究和代码验证,最近准备总结一下,分享给大家. 首先,Windows Azure提供了两种类型 ...