一.ECMAScript的基本介绍
ECMAScript 的 简单历史
1995年 ECMAScript第一个版本 ECMA1.1
1996年 ECMAScript第二个版本 ECMA2
1997年 ECMAScript第三个版本 ECMA3
2000年 ECMAScript第四个版本 ECMA4
ECMA4 中 新增了大量的新的语法内容
例如,新增了函数功能等
2011年 ECMAScript第五个版本 ECMA5
是现在最常用,兼容性最好的版本
2015年 ECMAScript第六个版本 ECMA6
ECMA6 中 新增了大量的新的语法内容
例如, class构造函数 , 箭头函数 , 新的数据类型等
对 JavaScript语言功能的提升,起到至关重要的作用
让我们从 弱类型语言,转化为 半强类型语言
通俗的理解 ECMA1-5 是 帕萨特 汽车
ECMA6 是 宝马Z4 小跑车
之后有新的版本 ECMAScript 对语言的功能也有提升
2016年 ECMAScript第七个版本 ECMA7
2017年 ECMAScript第八个版本 ECMA8
2018年 ECMAScript第九个版本 ECMA9
2019年 ECMAScript第十个版本 ECMA10
目前已经提升到了 阿斯顿·阿丁 级别
与 java 等还是有差距的
现在有了 node.js 对JavaScript功能又有了极大的完善
早晚有一天,我们的前端,可以 统治世界
二.ECMAScript中数组的操作语法
有几个特殊的数组的操作方式,是 ESMA5 新增的方法
1, indexOf()
2, forEach()
3, map() 方法 映射方法
语法 :
数组.map(function( value , key , arr ){需要执行的操作})
参数1:存储数组单元的数据
参数2:存储数组单元的索引
参数3:存储原始数组
所谓的映射,就是将当前数组的内容
一一对应,生成一个新的数组
数据组中,数据单元的个数,与之前数组的单元个数一样
数值的数值,与之前的数值,可以不一样
var arr = [1,2,3,4,5,6];
var res = arr.map(function(v){
// return 的是 新数组中的数值,与原始数组中的数值的映射关系
// 当前设定的是 乘2的关系
return v *= 2;
})
console.log(res);
4, filter() 过滤数组
将符合条件的数据作为返回值
语法:
数组.filter(function(value,key,array){操作的程序})
var arr = [1,2,3,4,5,6];
var res = arr.filter(function(v){
if(v >= 3){
return v;
}
})
console.log(res);
5, some()
数组中是否有一个满足条件的数据
有一个就行
语法: 数组.some(function(value,key.arr){})
var arr = [1,2,3,4,5,6];
var res1 = arr.some(function(v){
return v >= 6;
})
console.log(res1); → true
6, every()
数值中所有的数据,是否都满足条件
必须所有
语法: 数组.every(function(value,key.arr){})
var arr = [1,2,3,4,5,6];
var res2 = arr.every(function(v){
return v >= 6;
})
console.log(res2); → false