ES6中数组的扩展
继续更新
比如数组的20个方法:
/*
数组的方法
push
往数组中添加一个元素
unshift
向数组的开头添加一个元素,并返回新的长度
pop
用于删除最后一个元素并返回删除的元素
shift
用于删除第一个元素并返回第一个元素的值
indexOf
返回某个指定字符串在数组中首次出现的位置,如果没有找到匹配的字符串就返回-1
lastIndexOf
返回某个指定字符串在数组中首次出现的位置(从后向前查找),如果没有找到匹配的字符串就返回-1
includes
用来判断一个数组是否包含一个指定的值,如果有返回true没有返回false
splice
用于插入,删除,替换数组中的元素(会改变原有数组)
slice
从原有数组中返回指定元素(不会改变原有数组)
join
把数组里面的所有元素转化为字符串
concat
链接两个数组
sort
对数组内容进行排序
reverse
用于颠倒数组中的排序
some()
会依次执行数组中的每个元素
如果有一个元素满足条件,则表达式就返回true,剩余函数不在执行
如果没有函数满足条件,则表达式返回false
every
使用所有函数检测数组中的所有元素
如果有一个元素不满足条件,则表达式就返回false,剩余函数不执行
如果没有函数满足天剑,则表达式返回false
forEach
遍历数组,类似for循环
* map
映射 一一对应
返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值
* filter
过滤,根据业务条件,那一部分,抛弃一部分
创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素
* reduce
接受一个函数作为累加器,数组中的每个值开始缩减,最终计算为一个值
fill
用于将一个固定值替换数组的元素
find
数组中的每个元素都进行一次函数的执行
当数组中的元素在测试条件时返回true时,find()返回符合条件的元素,之后的值不在执行函数回调
如果没有符合条件的就返回undefined
findIndex
数组中的每个元素都进行一次函数的执行
当数组中的元素在测试条件时返回true时,findIndex()返回符合条件的元素,之后的值不在执行函数回调
如果没有符合条件的就返回-1
Array.from
以把对象转换为真正的数组
Array.of
返回参数值组成的数组。如果没有参数,就返回一个空数组
Array.isArray
用来检测对象是否是数组
*/
接下来老规矩上代码
一些数组的具体实现方法和过程
判断的方法
let
arr
= [
2,
6,
4];
//
true
//
let arr = [2, 5, 6]; //false
let
result
=
arr.
every(
function (
item,
index,
arr) {
return
item
%
2
==
0;
})
console.
log(
result);
let
score
= [
59,
44,
88,
61,
100];
let
isPass
=
score.
map(
function (
item) {
return
item
>=
60
?
"
不及格
"
:
"
及格
";
})
console.
log(
isPass);
//
及格 及格 不及格 不及格 不及格
let
aStudent
= [{
name:
"
小黑
",
age:
22
},
{
name:
"
小白
",
age:
20
},
{
name:
"
小吊
",
age:
15
}
];
let
aresult
=
aStudent.
some(
function (
item) {
return
item.
age
>=
20;
})
console.
log(
aresult);
//
true
循环数据
let
arr
= [
2,
6,
4];
arr.
forEach(
function (
item,
index,
arr) {
console.
log(
item,
index,
arr);
//
2 [2, 6, 4]
//
6 [2, 6, 4]
//
4 [2, 6, 4]
)}
筛选数据
let
goodsList
= [{
title:
"
衬衣
",
price:
139,
address:
"
浙江杭州
"
},
{
title:
"
衬衣
",
price:
79,
address:
"
山西太原
"
},
{
title:
"
衬衣
",
price:
99,
address:
"
河南洛阳
"
},
{
title:
"
衬衣
",
price:
199,
address:
"
北京朝阳
"
}
]
let
resultArr
=
goodsList.
filter(
function (
item) {
return
item.
price
>=
100;
//
筛选出所有衬衣价格大于100
})
console.
log(
resultArr);
//
数组中两条数据
//
{title: "衬衣", price: 139, address: "浙江杭州"}
//
{title: "衬衣", price: 199, address: "北京朝阳"}
数组的方法是不是很全很详细。
关于ES6的数组的扩展我能分享给大家大概就是这么多了,
如果上述代码有错误和不足,请评论或私信,我好及时改正。