본문 바로가기

Front End/Javascript

[JavaScript] 배열 indexOf(), lastIndexOf(), find(), findIndex()

문자열.padStrat(길이, 채움문자)

문자열의 길이를 폭만큼 확보해서 문자열 앞에 빈자리를 채움문자로 채웁니다.

문자열.padEnd(길이, 채움문자)

문자열의 길이를 폭만큼 확보해서 문자열 뒤에 빈자리를 채움문자로 채웁니다.

        document.write(`${ar.length}개 : `);
        ar.forEach(n=> document.write(`${n}`.padStart(3, '0') + " "));
        document.write(`<br><hr>`);

indexOf(값)

매개 변수로  주어진 값과 같은 값을 가지는 첫 번째 요소의 인덱스를 반환합니다. 찾지 못하면 -1을 반환합니다.

lastIndexOf(값)

매개 변수로  주어진 값과 배열의 뒤에서 부터 찾아서 첫 번째로 발견된 요소의 인덱스를 반환합니다. 찾지 못하면 -1을 반환합니다.

        document.write(`indexOf(45) : ${ar.indexOf(45)}<br>`);
        document.write(`lastIndexOf(45) : ${ar.lastIndexOf(45)}<br><hr>`);


find(함수)

매개 변수로   주어진 함수로 배열내의 요소를 테스트해서 참인 첫 번째 요소를 반환 합니다. 찾지 못하면 undefined를 반환합니다.

findIndex(함수)

매개 변수로  주어진 함수로 배열내의 요소를 테스트해서 참인 첫 번째 요소의 인덱스를 반환합니다. 찾지 못하면 -1을 반환합니다.

        document.write(`find(x=>x>=50) : ${ar.find(x=>x>=50)}<br>`);
        document.write(`find(x=>x>=150) : ${ar.find(x=>x>=150)}<br>`);
 
        document.write(`findIndex(x=>x>=50) : ${ar.findIndex(x=>x>=50)}<br>`);
        document.write(`findIndex(x=>x>=150) : ${ar.findIndex(x=>x>=150)}<br>`);

 

 

ex07.html 파일을 다음과 같이 만듭니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<!DOCTYPE html>
<html lang="ko">
 
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>javascript Array</title>
    <script>
        // min ~ max 사이의 정수 난수를 만들어 주는 함수
        let rand = (min = 0, max = 100=> parseInt(Math.random() * (max - min + 1)) + min;
 
        let ar = [];
        for (let i = 0; i < 20; i++) {
            ar.push(rand());
        }
        document.write(`${ar.length}개 : ${ar}<br><hr>`);
        
        // 문자열.padStrat(길이, 채움문자) : 문자열의 길이를 폭만큼 확보해서 문자열 앞에 빈자리를 채움문자로 채움
        // 문자열.padEnd(길이, 채움문자) :   문자열의 길이를 폭만큼 확보해서 문자열 뒤에 빈자리를 채움문자로 채움
        document.write(`${ar.length}개 : `);
        ar.forEach(n=> document.write(`${n}`.padStart(3'0'+ " "));
        document.write(`<br><hr>`);
        
        // indexOf(값) : 인자로 주어진 값과 같은 값을 가지는 첫 번째 요소의 인덱스를 반환합니다. 찾지 못하면 -1을 반환합니다.
        document.write(`indexOf(45) : ${ar.indexOf(45)}<br>`);
        // lastIndexOf(값) : 인자로 주어진 값과 배열의 뒤에서 부터 찾아서 첫 번째로 발견된 요소의 인덱스를 반환합니다. 찾지 못하면 -1을 반환합니다.
        document.write(`lastIndexOf(45) : ${ar.lastIndexOf(45)}<br><hr>`);
        
        // find() : 인자로 주어진 함수로 배열내의 요소를 테스트해서 참인 첫 번째 요소를 반환 합니다. 찾지 못하면 undefined를 반환합니다.
        document.write(`find(x=>x>=50) : ${ar.find(x=>x>=50)}<br>`);
        document.write(`find(x=>x>=150) : ${ar.find(x=>x>=150)}<br>`);
        // findIndex() : 인자로 주어진 함수로 배열내의 요소를 테스트해서 참인 첫 번째 요소의 인덱스를 반환합니다. 찾지 못하면 -1을 반환합니다.
        document.write(`findIndex(x=>x>=50) : ${ar.findIndex(x=>x>=50)}<br>`);
        document.write(`findIndex(x=>x>=150) : ${ar.findIndex(x=>x>=150)}<br>`);
        
    </script>
</head>
 
<body>
 
</body>
 
</html>
cs

 

 

실행 결과 입니다.