본문 바로가기
프로그래밍/Java Script

Java Script - 배열 메소드 array method

by 3.14pie 2022. 12. 5.

Array 배열은 프로그래밍에서 많이 쓰이기 때문에 중요하다.

        let animal = ["Dog", "Cat", "Lion"];
        let fruit = ["Apple", "Melon", "Grape"];

        console.log(animal.toString());
        console.log(animal.join(" / "));

        let Eat = animal.concat(fruit);
        console.log(Eat);

        let del_last = animal.pop();
        console.log(del_last);
        console.log(animal);

        animal.push("Tiger");
        console.log(animal);

        let del_first = animal.shift();
        console.log(del_first);
        console.log(animal);

        animal.unshift("Rabbit");
        console.log(animal);

        animal[1] = "Fox";
        console.log(animal);

        animal[animal.length-1] = "Butterfly";
        console.log(animal);

        animal.splice(2, 0, "Cow", "Sheep");
        console.log(animal);

        let fruit2 = fruit.slice(1, 2);
        console.log(fruit2);

toString - , 를 이용해 문자 형식으로 출력한다. 결과 : Dog,Cat,Lion

join - 원하는 문자열을 이용해 배열을 출력한다. 결과 : Dog / Cat / Lion

concat - 파라미터로 들어오는 배열을 붙여 출력한다. 결과 : 'Dog', 'Cat', 'Lion', 'Apple', 'Melon', 'Grape'

pop - 마지막 파라미터를 지운다. console.log 로 출력하면 삭제되는 파라미터가 반환된다. 결과 : 'Dog', 'Cat'

push - 배열의 마지막에 원하는 파라미터를 삽입한다. 결과 : 'Dog', 'Cat', 'Tiger'

shift - 첫번째 파라미터를 지운다. console.log 로 출력하면 삭제되는 파라미터가 반환된다. 결과 : 'Cat', 'Tiger'

unshift - 배열의 첫번째에 원하는 파라미터를 삽입한다. 결과 : 'Rabbit', 'Cat', 'Tiger'

splice - 원하는 인덱스 부분에 삽입한다. 2번 인덱스에 0개를 삭제하고 'Cow'와 'Sheep'을 삽입한다. 결과 : 'Rabbit', 'Fox', 'Cow', 'Sheep', 'Butterfly'

slice - 인덱스의 범위를 설정해 출력한다.

        let num = [11, 5, 6, 24];

        console.log(num.sort())
 
        num.sort(function (a, b){
            if(a > b){
                return 1;
            }
            else if (a < b){
                return -1;
            }
            else{
                return 0;
            }
        });
        console.log(num);

        let total = num.reduce(function(a, c, i){
            console.log(i);
            return a + c;
        })

sort - 배열의 인자를 정렬한다. 그냥 쓰면 문자열로 취급되어 유니코드 값 순서로 정렬된다. 그래서 숫자를 비교하는 코드를 작성한다. -1이면 a가 b보다 앞에, 0이면 순서를 바꾸지 않고, 1이면 b가 a보다 앞에 오도록 정렬한다.

reduce - 누산기 역할을 한다. 배열의 모든 합을 구한다.

        let employee = [
            {name : "Lee", num : 224, department : "SE"},
            {name : "Kim", num : 127, department : "SE"},
            {name : "Park", num : 364, department : "SRE"}
        ];
       
        employee.sort(function(a, b){
            return a.num > b.num ? 1 : a.num < b.num ? -1: 0;
        });

        console.log(employee);

        let emp_num = employee.filter(function(x){
            return x.num > 200;
        });

        console.log(emp_num);

        let sre = employee.filter(function(y){
            return y.department == "SRE";
        });

        console.log(sre);

        let num_name = employee.map(function(spec){
            return {specName : spec.num + spec.name, name : spec.name, num : spec.num, department : spec.department};
        });

        console.log(num_name);

정렬 코드를 ?과 :를 사용해 한줄로 나타낼 수 있다.

filter - 특정 조건을 만족하는 것을 반환한다.

map - 배열의 값을 재정의 할 때 사용한다.