数组的扩展

Array.of()

将一组值转换成数组

Array.of(1,2,3,4,5);
//[1,2,3,4,5]

Array.from()

可将类似数组的对象或者可便利的对象转换成数组,比如nodeList

var aA = document.getElementsByTagName("a");
Array.from(aA);

也可以将字符串转换成数组

let str = "hello",
Array.from(str);

可以结合Set数据结构实现数组的去重

let arr = [1,1,2,2,3];
let set = new Set(arr);
Array.from(set);//Array[1,2,3]

find函数和findIndex函数

find()函数用于找出数组中符合条件的第一个元素

let arr = [1,2,3,4,5,6];
arr.find(function(value){
return value > 2;
});
//value = 3

findIndex()函数返回符合条件的第一个数的位置

let arr = [7,8,9,10];
arr.findIndex(function(value){
return value > 8;
})
//2

fill函数

fill()函数用指定的值填充数组,第二个参数表示开始填充的位置,第三个参数结束的位置

let arr = [1,2,3];
arr.fill(4,1,3);
//[1,4,4]

entries()函数

entries()函数对数组的键值进行遍历,返回一个遍历器,可以用for..of进行遍历

keys()函数

对数组的索引键进行遍历,返回一个遍历器。

values()函数

对数组的元素进行遍历,返回一个遍历器。

数组推导

数组推导就是用简洁的写法,直接通过现有的数组生成新的数组。

var arr1 = [1,2,3,4,5];
var arr2 = [];
for(var i = 0; i < arr1.length; i++){
arr2.push(arr1[i]*2);
}
console.log(arr2);//[2,4,6,8,10]

在ES6中,提供了新的写法:

var arr1 = [1,2,3,4,5];
var arr2 = [for(i of arr1) i * 2];
console.log(arr2);//[2,4,6,8,10] var arr3 = [for(i of arr1) if(i > 3) i];
console.log(arr3);//[4,5]

ECMAScript6之Array类型的扩展的更多相关文章

  1. ECMAScript6之数值类型的扩展

    数值类型的扩展 Number.isNaN ES6将isNaN方法从window身上移植到了Number对象上,使用时和ES5中的isNaN方法一样,但是这是Number对象的方法 Number.isN ...

  2. ECMAScript6之String类型的扩展

    String类型的扩展 模板字符串 模板字符串是字符串的增强版,既可以当做普通的字符串使用,也可以在字符串中嵌入变量,它用反引号`来表示. //普通字符串 `In javascript '\n' is ...

  3. 对easyui-validatebox的验证类型的扩展--补充

    一.说明 这篇文章是<对easyui-validatebox的验证类型的扩展>的补充.在工程的持续开发中,我们又对此进行了更多的补充. 二.补充代码 增加了更多的验证类型. /* * 比较 ...

  4. JS高程5.引用类型(2)Array类型

    Array类型: ECMAScript数组的每一项可以保存任何类型的数据,数组的大小是可以动态调整的. 创建数组的基本方式: (1)使用Array构造函数 var color=new Array(); ...

  5. 5.2 Array类型介绍

    Array类型是数组类型,Array(数组)类型也是引用类型中的一种. js 数组中的每一项可以保存任何类型的数据. js数组的大小/长度是可以动态调整的.如果你往数组中添加数据,数组长度会自动增加. ...

  6. JavaScript中Array类型方法总结

    Array类型是ECMAScript中最常用的类型之一,ECMAScript中的数组与其他多数语言中的数组有着相当大的区别.ECMAScript数组的每一项可以保存任何类型的数据.这里总结了数组类型的 ...

  7. js中Array的一些扩展

    IE下很多Array的方法都不被支持.每次都要写.所以记下来,以免忘记: 以下是对Array的一些扩展,在FF ,google 下是不需要加的. /** * 方法Array.filter(functi ...

  8. Object类型与Array类型

    总结--JS中的引用类型: Object类型,Array类型,Boolean类型,Number类型,String类型,Date类型, Function类型,RegExp类型,单体内置对象(Global ...

  9. oracle Array类型作为参数传入函数(存储过程) 大字符串参数解决方案

    1. 创建自定义的类型.由于Oracle没有提供现成的array类型,这里用table类型来模拟. CREATE OR REPLACE TYPE varchar_array is Table OF v ...

随机推荐

  1. Role Object(角色对象)

    Role Object(角色对象) 索引 意图 结构 参与者 适用性 效果 相关模式 实现 实现方式(一):Role Object 的示例实现. 意图 通过明确地附加角色对象到目标对象中,以使对象可以 ...

  2. cookie和session详解[转]

    文章链接: http://aijezdm915.iteye.com/blog/1272530 cookie.session 都是用来保存用户状态信息的一种方法或手段 二者主要区别是:         ...

  3. 理解对象模型图(Reading OMDS)

    理解对象模型图(Reading OMDS) 引言 这篇文章大部分内容是翻译的帮助资料里的东西.学习技术,英语是个好工具.一直把英语的地位看得和技术一样重,也会强迫自己看英语版的技术书籍(都是PDF版的 ...

  4. Nginx 配置基于域名的虚拟

    编辑配置文件 vi /etc/nginx/nginx.conf user    www www; worker_processes  2; error_log  logs/error.log  not ...

  5. c语言,字符串原地翻转

    实现字符串的原地翻转: #include<stdlib.h> #include<stdio.h> #include<assert.h> #define SWAP(a ...

  6. JavaEE:response响应和request请求

    Web服务器接收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象.request和response对象既然代表请求和响应,那么我 ...

  7. PHP之-json转数组,支持多层嵌套json

    function json_to_array($str) { if (is_string($str)) $str = json_decode($str); $arr=array(); foreach( ...

  8. 机器学习的Spark与Scala开发简介

     一.机器学习常用开发软件:Spark.Scala 1. Spark简介: MLlib包含的库文件有: 分类 降维 回归 聚类 推荐系统 自然语言处理 在线学习 统计学习方法:偏向理论性,数理统计的方 ...

  9. sql查询语句优化需要注意的几点

    为了获得稳定的执行性能,SQL语句越简单越好.对复杂的SQL语句,要设法对之进行简化. 常见的简化规则如下:   1)不要有超过5个以上的表连接(JOIN) 2)考虑使用临时表或表变量存放中间结果. ...

  10. android电源“有毒”移动电源Android版的设计及其实现

    工作之余抽点时间出来写写博文,希望对新接触的朋友有帮助.今天在这里和大家一起学习一下android电源 报道http://www.cnbeta.com/articles/239726.htm称:安全研 ...