ホームページ  >  記事  >  ウェブフロントエンド  >  forEach()、Array.map()、Array.filter()の使用方法は? (コード例)

forEach()、Array.map()、Array.filter()の使用方法は? (コード例)

青灯夜游
青灯夜游転載
2019-11-28 17:01:481961ブラウズ

この記事では、forEach()、Array.map()、Array.filter() の使用法を紹介します。一定の参考値があるので、困っている友達が参考になれば幸いです。

forEach()、Array.map()、Array.filter()の使用方法は? (コード例)

Array.forEach()

forEach() メソッドは、配列ごとに関数を 1 回呼び出します。要素 (コールバック)。 [関連コースの推奨事項: JavaScript ビデオ チュートリアル]

<!DOCTYPE html>
<html>
<meta charset="utf-8">
<title>JavaScript Array.forEach()</title>
<body>
<h2>JavaScript Array.forEach()</h2>
<p>为每个数组元素调用一次函数。</p>
<p id="demo"></p>
<script>
    var txt = "";
    var numbers = [45, 4, 9, 16, 25];
    numbers.forEach(myFunction);
    document.getElementById("demo").innerHTML = txt;

    function myFunction(value, index, array) {
        txt = txt + value + "<br>";
    }
</script>
</body>
</html>

この関数には 3 つのパラメーターがあることに注意してください:

#● 要素の値

● 要素のインデックス

●配列自体

##上記の例では、value パラメーターのみを使用しています。この例は次のように書き換えることができます:

<!DOCTYPE html>
<html>
<meta charset="utf-8">
<title>JavaScript Array.forEach()</title>
<body>
<h2>JavaScript Array.forEach()</h2>
<p>为每个数组元素调用一次函数。</p>
<p id="demo"></p>
<script>
    var txt = "";
    var numbers = [45, 4, 9, 16, 25];
    numbers.forEach(myFunction);
    document.getElementById("demo").innerHTML = txt;

    function myFunction(value) {
        txt = txt + value + "<br>";
    }
</script>
</body>
</html>

Array.map() map() メソッドは、各配列に対して関数を実行することで機能します。要素。新しい配列を作成します。 map() メソッドは、値のない配列要素を実行しない関数です。 map() メソッドは元の配列を変更しません。

この例では、各配列値を 2 で乗算します:

<!DOCTYPE html>
<html>
<meta charset="utf-8">
<title>JavaScript Array.map()</title>
<body>
<h2>JavaScript Array.map()</h2>
<p>通过对每个数组元素执行函数来创建新数组。</p>
<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 * 2;
    }
</script>
</body>
</html>

この関数には 3 つのパラメータがあることに注意してください:

● 要素の値

● 要素のインデックス

●配列自体

コールバック関数が value パラメーターのみを使用する場合、インデックスと配列パラメーターは省略できます:

<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Array.map()</h2>
<p>通过对每个数组元素执行函数来创建新数组。</p>
<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) {
        return value * 2;
    }
</script>
</body>
</html>

Array.filter ( )#filter() メソッドは、合格したテストの配列要素を含む新しい配列を作成します。この例では、18 より大きい値を持つ要素から新しい配列を作成します:

<!DOCTYPE html>
<html>
<meta charset="utf-8">
<title>JavaScript Array.filter()</title>
<body>
<h2>JavaScript Array.filter()</h2>
<p>使用通过测试的所有数组元素创建一个新数组。</p>
<p id="demo"></p>
<script>
    var numbers = [45, 4, 9, 16, 25];
    var over18 = numbers.filter(myFunction);

    document.getElementById("demo").innerHTML = over18;

    function myFunction(value, index, array) {
        return value > 18;
    }
</script>
</body>
</html>

この関数には 3 つのパラメーターがあることに注意してください:

● 要素の値

● 要素のインデックス

#配列自体

<!DOCTYPE html>
<html>
<meta charset="utf-8">
<title>JavaScript Array.filter()</title>
<body>
<h2>JavaScript Array.filter()</h2>
<p>使用通过测试的所有数组元素创建一个新数组。</p>
<p id="demo"></p>
<script>
    var numbers = [45, 4, 9, 16, 25];
    var over18 = numbers.filter(myFunction);
    document.getElementById("demo").innerHTML = over18;
    function myFunction(value) {
        return value > 18;
    }
</script>
</body>
</html>

この記事は

js チュートリアル

列から引用したものです。ぜひ学習してください。

以上がforEach()、Array.map()、Array.filter()の使用方法は? (コード例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事は51cto.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。