>  기사  >  웹 프론트엔드  >  forEach(), Array.map() 및 Array.filter()를 사용하는 방법은 무엇입니까? (코드 예)

forEach(), Array.map() 및 Array.filter()를 사용하는 방법은 무엇입니까? (코드 예)

青灯夜游
青灯夜游앞으로
2019-11-28 17:01:482055검색

이 글에서는 forEach(), Array.map() 및 Array.filter()의 사용법을 소개합니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.

forEach(), Array.map() 및 Array.filter()를 사용하는 방법은 무엇입니까? (코드 예)

Array.forEach()

forEach() 메서드는 각 배열 요소에 대해 한 번씩 함수(콜백 함수)를 호출합니다. [관련 강좌 추천: 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개의 매개변수가 있다는 점에 유의하세요.

 ● 요소 값

● 요소 인덱스

● 배열 자체

위 예에서는 값 매개변수만 사용합니다. 예제는 다음과 같이 다시 작성할 수 있습니다.

<!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개의 매개변수가 있습니다.

● 요소 값

● 요소 인덱스

● 배열 자체

콜백 함수가 값 매개변수만 사용하는 경우 시기:

<!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 tutorial 칼럼에서 학습을 환영합니다!

위 내용은 forEach(), Array.map() 및 Array.filter()를 사용하는 방법은 무엇입니까? (코드 예)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 51cto.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제