JavaScript - ECMA5
JavaScript – emca5严格模式
ECMA5是什么?
我们都知道现在所学的JavaScript有一个标准叫做ecma标准,而JavaScript的全称实际叫做ECMAJavaScript
ecma5也就是ecma的第五版,现在最新的是ecma6
我们要了解ECMA,首先要学习ECMA的严格模式
从字面意思上来看,这种严格模式下,浏览器对JS的要求更加苛刻
“use strict”
举个小例子:
这个max=10;我们并没有去声明它
function m1(){
max =10;
}
m1();
alert(max);
我们来运行一下
如果在给变量赋值时,没有使用var声明变量,那么就会当成 全局变量来处理
我们来改一下上面的代码
再来运行一下,这时候页面就会报错
如果我们加了var 声明,就没有报错了
这也就说明,使用use strict就是严格模式
use strict写在哪个作用域下,它就会让这个作用域全部遵从严格模式
注意:
1.不要轻易在全局范围内增加use strict,它会让所有代码都是严格模式
2.建议在作用域内使用严格模式
ECM5数组的额外方法
1.indexOf(); 输出下标
格式:数组.indexOf( 元素,开始的下标index );
注意:使用的方法和字符串的方法一致
返回值:返回所对应的下标
举个小例子:
var arr = [10,20,30,40,50,30];
alert(arr.indexOf(30));
运行结果
我们可以设置第二个参数,从第几个下标开始查找
var arr = [10,20,30,40,50,30];
alert(arr.indexOf(30,3));
运行结果如下,下标3以后出现的下标位置为5
2.forEach(); 遍历数组
格式:数组.forEach( function( item,index,array ){ } )
item:当前遍历到的元素
index:当前遍历到的下标
array:当前数组
返回值:遍历数组
举个小例子:
运行结果
这里还可以把她改简便的操作
运行结果
通过这种简单的写法也可以将数组进行遍历
3.map 映射 遍历→操作→返回
格式:和forEach差不多
数组.map( function( item,index,array ){ } )
举个小例子:
运行结果是源数组的每个元素进行了加2的操作
它的操作原理是先对数组进行遍历,每一次遍历之后都加2完成映射效果
4.reduce 归并
格式:和上面差不多,但是参数有所不同
数组.mreduce function( pre,next,index,array ){ } )
pre:上一次遍历return后面的值
next:当前遍历到的元素
举个小例子:
运行结果,第一次alert是10,20,;第二次return是30,30;再下一次是100,50
那么最后的返回值等于归并成功以后的结果
运行结果就是归并的结果,这几个数的和150
5.filter 过滤
格式:因为下面的格式都差不多,这里不再一一叙述,直接看例子
返回值:返回符合条件的元素
举个小例子:
运行结果如下,找出所有大于30的元素
6.some 某些
返回值:判断return后面的条件,若成立返回true,若不成立返回false
注意:这里如果匹配成功,返回true,后面的不再进行匹配
举个小例子:
运行结果如下,有30,返回true
7.every 全部
返回值:和some相反,要求每一项都符合,才返回true,有一项不符合就返回false
举个小例子:
运行结果:
- 写作不易,大家多多关注,谢谢啦-
---web分享,分享的不只是web