zoukankan      html  css  js  c++  java
  • ES6(五) 数组扩展

    Array.of方法用于将一组值,转换为数组。 

    Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable)的对象(包括ES6新增的数据结构Set和Map)。

    下面是一个类似数组的对象,Array.from将它转为真正的数组。

    .copyWithin()方法,在当前数组内部,将指定位置的成员复制到其他位置(会覆盖原有成员),然后返回当前数组。也就是说,使用这个方法,会修改当前数组。

    它接受三个参数。

    • target(必需):从该位置开始替换数据。
    • start(可选):从该位置开始读取数据,默认为0。如果为负值,表示倒数。
    • end(可选):到该位置前停止读取数据,默认等于数组长度。如果为负值,表示倒数。

    数组实例的entries(),keys()和values()

    ES6提供三个新的方法——entries()keys()values()——用于遍历数组。它们都返回一个遍历器对象(详见《Iterator》一章),可以用for...of循环进行遍历,唯一的区别是keys()是对键名的遍历、values()是对键值的遍历,entries()是对键值对的遍历。

     

    空位

      

    ES5对空位的处理,已经很不一致了,大多数情况下会忽略空位。

    • forEach()filter()every() 和some()都会跳过空位。
    • map()会跳过空位,但会保留这个值
    • join()toString()会将空位视为undefined,而undefinednull会被处理成空字符串。

    ES6 中明确的规定 将空位转化为undefined

      Array.from方法会将数组的空位,转为undefined

      copyWithin()会连空位一起拷贝。

      fill()会将空位视为正常的数组位置。

      for...of循环也会遍历空位。

      entries()keys()values()find()findIndex()会将空位处理成undefined

    由于对于空位的解释不一样   所以要尽量避免空位的产生

     

     

     

  • 相关阅读:
    iconv 文件编码相互转换
    MySQL 字符编码
    MySQL there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause同时创建多个更新当前时间戳字段 解决方法
    PHP 输出日志到文件 DEMO
    Nginx http -> https 跳转后 POST 丢失
    SSH SCP 远程密钥登录配置和服务器间的文件传输
    Mac 安装 7zip
    git pull There is no tracking information for the current branch.
    MacOS 安装配置 Laravel
    Mac OS 安装 MySQL5.7
  • 原文地址:https://www.cnblogs.com/web-Rain/p/6255726.html
Copyright © 2011-2022 走看看