摘要:对象简洁表示法原来写法简洁写法方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。方法按照原始数组元素顺序依次处理元素。注意不会对空数组进行检测。运行结果为举例说明二其中是函数,当没有第二个参数时。有三个参数,并没有深入研究。
1.对象简洁表示法
原来写法
var name = "lzf";
var gender = "male";
var fn = function(){console.log(1);}
var obj = {
name:name,
gender:gender,
fn:fn,
fn2:function(){
console.log(2)
}
};
console.log( obj );
obj.fn2();
obj.fn();
简洁写法
var name = "zm";
var gender = "male";
var fn = function(){console.log(1);}
var obj = {
name,
gender,
fn,
fn2(){
console.log(2)
}
};
console.log( obj );
obj.fn2();
obj.fn();
2.Array.map( )
map( ): 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
map( ): 方法按照原始数组元素顺序依次处理元素。
注意: map() 不会对空数组进行检测。
注意: map() 不会改变原始数组。
举例一:
var arr=[10,,12,13];
//item:表示数组每一项的值
//index:表示下标
//arr:表示数组
var res=arr.map(function (item,index,arr) {
console.log( item,index,arr );
})
运行结果:
举例二:
var arr=[10,11,12];
var res=arr.map(function (item,index,arr) {
console.log( item,index,arr );
arr.shift();
})
运行结果:
举例三:
var arr = [100,,300];
arr[10] = 1000;
var res = arr.map( function(item){
return item * 10
} );
console.log( res );//[1000, empty, 3000, empty × 7, 10000]
console.log( arr );//[100, empty, 300, empty × 7, 1000]
3.Array.filter( )
filter( ) : 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
注意: filter( ) 不会对空数组进行检测。
注意: filter( ) 不会改变原始数组。
var arr = [1, 5, 8, 7, 2, 4];
var res = arr.filter(item => item < 5);
console.log(res);//[1, 2, 4]
4.Array.every( )
只要有一次 回调函数 执行 返回值 为 假 就立刻 停止 并且 every返回值为假
var arr = [1,-5,2,3,34,54,56];
var res = arr.every( item => {
console.log( item );
return item > 0;
});
console.log( res );
运行结果:
5.Array.some( )只要 有一次 回调函数 执行 返回值 为 真 ,就立刻 停止 并且 some返回值为真
var arr = [1,-5,2,3,34,54,56];
var res = arr.some( item => {
console.log( item );
return item > 0
} );
console.log( res );
运行结果:
6.Array.reduce( )举例说明一:
//reduce( fn[,attr1] )
//其中fn是函数,attr1是参数
//fn函数有两个参数a,b。
//第一次执行a的值为attr1,b的值为数组第0项
//第二次执行a指的是第一次执行的返回值,b的值为数组第1项
//第三次执行a指的是第二次执行的返回值,b的值为数组第2项
//直到遍历数组的全部内容,返回最终结果。
var arr = [1,2,3,4,5];
var res = arr.reduce( function( a,b ){
console.log( a,b );
return a+b
},100);
console.log( res );
运行结果为:
举例说明二:
//reduce( fn )
//其中fn是函数,当没有第二个参数时。
//fn函数有两个参数a,b。
//第一次执行a的值为数组第0项,b的值为数组第1项
//第二次执行a指的是第一次执行的返回值,b的值为数组第2项
//第三次执行a指的是第二次执行的返回值,b的值为数组第3项
//直到遍历数组的全部内容,返回最终结果。
var arr = [1,2,3,4,5];
var res = arr.reduce( function( a,b ){
console.log( a,b );
return a+b
});
console.log( res );
运行结果为:
7.Array.includes( )includes( ) 方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。
var arr = [1,2,3,4,undefined,false,5,"a",null,NaN];
console.log( arr.includes( "a" ) );//true
console.log( arr.includes( NaN ) );//true
console.log( arr.includes( "1" ) );//false
console.log( arr.includes( null ) );//true
console.log( arr.includes( undefined ) );//true
console.log( arr.includes( false ) );//true
8.Array.fill( )
fill( ):填充数组,返回新数组,改变原来数组。
这个博客对fill( )的用法写的更清楚,想进一步了解请点击
var arr = [1,2,4,3];
var res = arr.fill( ["a","b"]);
console.log( arr );
console.log( res );
运行结果:
9.Array.of( )和Array.from( )Array.of( )
var arr = Array.of( 4,5,6,7 );
console.log( arr );// [4, 5, 6, 7]
Array.from( ):将类数组转化为数组。有三个参数,并没有深入研究。
运行结果:
11.Array.find( )和Array.findIndex( )find( )函数用来查找目标元素,找到就返回该元素,找不到返回undefined。
findIndex( )函数也是查找目标元素,找到就返回元素的位置,找不到就返回-1。
1
2
5
3
5
- var lis = document.getElementsByTagName("li");
- var res1 = Array.from(lis).find( function( item,index,arr ){
- console.log( item,index,arr );
- return item.innerHTML === "50";
- } );
- console.log( res1 );
- //------------------------------------------
- var res2 = Array.from(lis).findIndex( function( item,index,arr ){
- console.log( item,index,arr );
- return item.innerHTML === "5";
- } )
- console.log( res2 );
运行结果:
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/52613.html
摘要:对象简洁表示法原来写法简洁写法方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。方法按照原始数组元素顺序依次处理元素。注意不会对空数组进行检测。运行结果为举例说明二其中是函数,当没有第二个参数时。有三个参数,并没有深入研究。 1.对象简洁表示法 原来写法 var name = lzf; var gender = male; var fn = fu...
摘要:已经被声明了举例说明块级作用域报错,常量初始化之后内部值不可改必须初始化赋值的问题。不支持预解析不允许重复声明支持块级作用域举例说明报错,。解决地址引用的方法通过转化为字符串,再转化为对象。此方法存在问题中缺少 1.var , let , const var 1.预解析(变量提升) 2.可以重复声明变量 let 1.不支持预解析(必须先声明,后使用...
摘要:已经被声明了举例说明块级作用域报错,常量初始化之后内部值不可改必须初始化赋值的问题。不支持预解析不允许重复声明支持块级作用域举例说明报错,。解决地址引用的方法通过转化为字符串,再转化为对象。此方法存在问题中缺少 1.var , let , const var 1.预解析(变量提升) 2.可以重复声明变量 let 1.不支持预解析(必须先声明,后使用...
摘要:已经被声明了举例说明块级作用域报错,常量初始化之后内部值不可改必须初始化赋值的问题。不支持预解析不允许重复声明支持块级作用域举例说明报错,。解决地址引用的方法通过转化为字符串,再转化为对象。此方法存在问题中缺少 1.var , let , const var 1.预解析(变量提升) 2.可以重复声明变量 let 1.不支持预解析(必须先声明,后使用...
摘要:但是定时器没关。通过变量来控制定时器内函数的执行停止播放默认为。方式三通过关闭定时器来停止轮播图的运动。,通过传入定时器的编号来。清除定时器,再开启定时器。所以,每次打开定时器,先清除前一个。点击页面任何一个位置关闭定时器。 1.定时器 定义:当我们需要隔一段时间,再执行一段代码。或者每隔一段时间,执行一段代码。我们可以使用定时器。使用场景:例如网站轮播图的自动滚动。广告延迟弹出的某些...
阅读 716·2021-11-24 09:39
阅读 3581·2019-08-30 15:53
阅读 2595·2019-08-30 15:44
阅读 3312·2019-08-30 12:54
阅读 2308·2019-08-29 12:23
阅读 3375·2019-08-26 14:05
阅读 2179·2019-08-26 13:36
阅读 3519·2019-08-26 13:33