ECMAScript6之Array类型的扩展
数组的扩展
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类型的扩展的更多相关文章
- ECMAScript6之数值类型的扩展
数值类型的扩展 Number.isNaN ES6将isNaN方法从window身上移植到了Number对象上,使用时和ES5中的isNaN方法一样,但是这是Number对象的方法 Number.isN ...
- ECMAScript6之String类型的扩展
String类型的扩展 模板字符串 模板字符串是字符串的增强版,既可以当做普通的字符串使用,也可以在字符串中嵌入变量,它用反引号`来表示. //普通字符串 `In javascript '\n' is ...
- 对easyui-validatebox的验证类型的扩展--补充
一.说明 这篇文章是<对easyui-validatebox的验证类型的扩展>的补充.在工程的持续开发中,我们又对此进行了更多的补充. 二.补充代码 增加了更多的验证类型. /* * 比较 ...
- JS高程5.引用类型(2)Array类型
Array类型: ECMAScript数组的每一项可以保存任何类型的数据,数组的大小是可以动态调整的. 创建数组的基本方式: (1)使用Array构造函数 var color=new Array(); ...
- 5.2 Array类型介绍
Array类型是数组类型,Array(数组)类型也是引用类型中的一种. js 数组中的每一项可以保存任何类型的数据. js数组的大小/长度是可以动态调整的.如果你往数组中添加数据,数组长度会自动增加. ...
- JavaScript中Array类型方法总结
Array类型是ECMAScript中最常用的类型之一,ECMAScript中的数组与其他多数语言中的数组有着相当大的区别.ECMAScript数组的每一项可以保存任何类型的数据.这里总结了数组类型的 ...
- js中Array的一些扩展
IE下很多Array的方法都不被支持.每次都要写.所以记下来,以免忘记: 以下是对Array的一些扩展,在FF ,google 下是不需要加的. /** * 方法Array.filter(functi ...
- Object类型与Array类型
总结--JS中的引用类型: Object类型,Array类型,Boolean类型,Number类型,String类型,Date类型, Function类型,RegExp类型,单体内置对象(Global ...
- oracle Array类型作为参数传入函数(存储过程) 大字符串参数解决方案
1. 创建自定义的类型.由于Oracle没有提供现成的array类型,这里用table类型来模拟. CREATE OR REPLACE TYPE varchar_array is Table OF v ...
随机推荐
- char* 转换成 CString
真是有意思: CString mess ; mess = m_chLocalIP; 这样OK,但是写在一行就会报错 CString mess = m_chLocalIP; //有问题
- ASP.NET WebApi 增删改查
本篇是接着上一篇<ASP.NET WebApi 入门>来介绍的. 前言 习惯说 CRUD操作,它的意思是"创建. 读取. 更新和删除"四个基本的数据库操作.许多 HTT ...
- C++一些注意点之转换操作符
转换操作符定义 类可通过一个实参调用的非explicit构造函数定义一个隐式转换(其他类型—>类类型).当提供了实参类型的对象而需要一个类类型的对象时,编译器将使用该转换.这种构造函数定义了到类 ...
- VS2010生成安装包制作步骤
VS2010生成安装包制作步骤 在VS2010中文旗舰版本中生成winForm安装包,可以复制你电脑中的开发环境,避免你忘记了一下配置然后在别的机器上运行不起来.也省去了Framwork的安装. ...
- linux下的中文编码问题
很多linux的初学者都会碰到这样一个问题:把windows下的文档拷到linux系统,会出现乱码!其实这涉及到中文编码的问题.linux系统默认的是统一码(utf8).而如果你的文件是big5,显然 ...
- visual studio快捷键总结
熟练操作vs的快捷键,可以有效地提高开发效率,下面将vs 2008与vs 2010的快捷键进行了总结,结果如下表: 注:vs 2010与vs 2008的快捷键基本相同. 编辑: CTRL + M, ...
- Windows 7/8 64位下安装64位Apache 2.4.7
准备软件: VC11 运行库 64位的apache版本 传送门:http://www.apachelounge.com/download/ 安装步骤: 修改httpd.conf配置文件 37行: Se ...
- 开始MVC5之旅
ASP.NET MVC 5-开始MVC5之旅 本教程将使用Visual Studio 2013手把手教你构建一个入门的ASP.NET MVC5 Web应用程序.本教程配套的C#源码工程可通过如下网 ...
- 自定义ModelValidatorProvider
MVC数据验证原理及自定义ModelValidatorProvider实现无编译修改验证规则和错误信息 Asp.net MVC中的提供非常简单易用的数据验证解决方案. 通过System.Compone ...
- Linux环境进程间通信(五): 共享内存(上)
linux下进程间通信的几种主要手段: 管道(Pipe)及有名管道(named pipe):管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允 ...