본문 바로가기

클라이언트/JavaScript
[자바스크립트(JavaScript)] 배열(Array)

//배열, Array

    - Array(외형) + ArrayList(길이 가변, 자료형 자유)    
    ~ var 배열명 = new Array();
    
    - 초기화 
        1. var 배열명 = new Array(값);
        2. var 배열명 = [값] > 배열 리터럴 표현 > 더 많이 씀

    * 유사 배열: 배열은 아닌데, 배열처럼 보이게 만든 객체 
        - 스트림 계열 메서드 미지원
        - Array.from() : 유사배열을 진짜 배열로 바꾸는 함수


// Array 관련 메서드

- push : 제일 뒤에 요소 삽입

- pop : 제일 뒤의 요소 삭제 

- shift : 제일 앞의 요소 삭제 

- unshift : 제일 앞에 요소 삽입

- concat(array2): 배열 연결

- includes: 특정 요소를 배열이 포함하고 있는지 탐색

- indexOf : 특정 요소의 index를 탐색(없으면 -1 반환)

- reverse: 배열의 순서를 반전

- slice(start, end) : 배열 추출 (end 이전까지 추출)

- splice(start, [deleteCount], [items]) : 삽입과 삭제 모두 가능
   > deleteCount가 0일 경우 삭제하지 않고 삽입만 이루어진다.

- sort : 배열 정렬


<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Array</title>
    </head>
    <body>
        <h1>Array</h1>
        <h2>Syntax</h2>
        <script>
            var coworkers = ["java", "script"];
        </script>
        <h2>get</h2>
        <script>
            document.write(coworkers[0]);
            document.write(coworkers[1]);
        </script>
        <h2>count</h2>
        <script>
            document.write(coworkers.length);
        </script>
        <h2>add</h2>
        <script>
            coworkers.push("Array");
            document.write(coworkers[0] + "\n");
            document.write(coworkers[1] + "\n");
            document.write(coworkers[2] + "\n");
            document.write("길이" + coworkers.length);            
        </script>
    </body>
</html>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
    <script>        
        
        var nums = new Array();
        
        nums[0] = 100;
        nums[1] = 200;
        nums[2] = 300;
        
        for (var i = 0; i < nums.length; i++) {
            console.log(i, nums[i]);
            
        }
        
        var nums2 = new Array(100, 200, 300);
        var nums3 = [ 100, 200, 300 ]; //배열 리터럴 표현
        
        console.log(nums2);
        console.log(nums3);
        
        //빈배열
        var num4 = new Array();
        var num5 = [];
        
        //배열 > 스택처럼 활용
        var list = [];
        
        //list[0] = 10;
        list.push(10);
        console.log(list);
        
        list.push(20);
        console.log(list);
        
        list.push(30);
        console.log(list);
        
        console.log(list.pop());
        console.log(list);
        
    </script>
    
</body>
</html>