JavaScript数组迭代方法:forEach(),map(),filter(),reduce(),every(),some(),indexOf(),lastIndexOf(),find()

JavaScript数组迭代方法

1.Array.forEach()

forEach()方法为每个数组元素调用一次函数(回调函数)
该函数接收三个参数:项目值,项目索引,数组本身。

<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
    <p id="demo"></p>
</body>
<script>
    var number = ["1", "31", "311", "43", "23"];
    var txt = "";
    number.forEach(myFunction);
    document.getElementById("demo").innerHTML = txt;
    function myFunction(value, index, array) {
        txt = txt + value + "<br>";
    }
</script>
</html>
2.Array.map()

map() 方法通过对每个数组元素执行函数来创建新数组。
map() 方法不会对没有值的数组元素执行函数。
map() 方法不会更改原始数组。
map()函数有三个参数:项目值,项目索引,数组本身。

<body>
<p id="demo"></p>
<script>
var numbers1 = [45, 4, 9, 16, 25];
var numbers2 = numbers1.map(myFunction);
document.getElementById("demo").innerHTML = numbers2;

function myFunction(value, index, array) {
  return value * 4;
}
</script>
</body>
3.Array.filter()

filter() 方法创建一个包含通过测试的数组元素的新数组。
filter()函数有三个参数:项目值,项目索引,数组本身。

var numbers = [45, 4, 9, 16, 25];
var over18 = numbers.filter(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}
console.log(over18);
4.Array.reduce()

reduce() 方法在每个数组元素上运行函数,以生成(减少它)单个值。
reduce() 方法在数组中从左到右工作。另请参见 reduceRight()。
reduce() 方法不会减少原始数组。
reduce()函数接受了四个参数:总数(初始值/先前返回的值)
reduce()方法可以接受一个初始值(myfunction,100)

5.Array.reduceRight()

reduceRight() 方法在每个数组元素上运行函数,以生成(减少它)单个值。
reduceRight()方法不会减少原始数组。
接受参数个数同上。

6.Array.every()

every() 方法检查所有数组值是否通过测试。

7.Arrayr.some()

some()方法检查某些数值是否通过函数设定的测试。

  • Array.indexOf(item,start)方法在数组中搜索元素值并返回其位置

item:要检索的项目 ;start :从哪里开始搜索。负值从结尾开始的给定位置开始,检索到结尾。
如果未找到返回-1,多次出现,返回第一次出现的位置。

  • Array.lastIndexOf()基本同上,但是它从结尾开始检索到开头。

  • Array.find() 返回通过测试函数的第一个数组元素的值

接收三个参数:项目值,项目索引,数组本身。

  • Array.findIndex()返回通过测试函数的第一个数组元素的索引
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值