[초보 중의 왕초보] 공부 시작하다9

0

1. 오늘 공부 핵심 키워드

/배열을 정리할 때 유용한 메소드들
/sort

2. sort

- sort

sort 메서드는 배열의 요소를 정렬한다. 원본 배열을 직접 변경하며, 정렬된 배열을 반환한다.

const fruit = ['banana', 'apple', 'carrot'];
fruit.sort();
alert(fruit); // apple,banana,carrot
  • 같은 방법으로 .reverse를 사용하면 요소를 내림차순으로 정렬할 수 있다.
  • 숫자 요소로 이뤄진 배열을 정렬하려면 , sort는 유니코드 문자열 순서를 따르기 때문에 sort 메서드에 정렬 순서를 정의하는 비교 함수를 인수로 전달해야 한다.
  • (영어는 굳이 a - b를 해줄 필요없음). 숫자는 정렬을 해주기 위해서는 sort(인자1, 인자2) 인자를 넣어주고, 오름차순 a - b / 내림차순 b - a 으로 지정해줘야지만 정렬이 된다.
const points = [40, 100, 1, 5, 2, 25, 10];

// 오름차순 정렬
points.sort((a, b)=> a - b);

console.log(points[0], points[points.length - 1]) // 1, 100

// 내림차순 정렬
points.sort((a, b)=> b - a);

console.log(points[points.length - 1], points[0]) //1, 100(최솟값/ 최댓값)

3. redues

- reduce 메서드는 자신을 호출한 배열의 모든 요소를 순회하며 인수로 전달받은 콜백 함수를 반복 호출한다.

그리고 콜백 함수의 반환값을 다음 순회 시에 콜백 함수의 첫번째 인수로 전달하면서 함수를 호출하여 하나의 결과값을 만들어 반환한다. 이 때 원본 배열은 변하지 않는다.




4. for문 중첩 (배열 계산하기)

  • 배열의 길이만큼 반복하고, points[i]의 길이만큼 다시 j번 반복하면서 points[i][j]를 한번씩 돌아가면서 자기 자신을 곱해준다. 그 후 answer 넣어준다.
const points = [[40, 100], [1, 5], [2, 25]];


    var answer = [ ];
 
    
    //     points.forEach(point => answer.push(point * 2));
        

    // console.log(answer)

    for(let i = 0; i < points.length; i++){
        for(let j = 0; j < points[i].length; j++){
            answer.push(points[i][j] * points[i][j]) 
            console.log(answer)
        }
    }
    
return    
[ 1600 ]
[ 1600, 10000 ]
[ 1600, 10000, 1 ]
[ 1600, 10000, 1, 25 ]
[ 1600, 10000, 1, 25, 4 ]
[ 1600, 10000, 1, 25, 4, 625 ]

-for문 배열의 또 다른 중첩 방식

  • 결과값
profile
코딩도 재미있고, 프로덕트 디자인도 재밌습니다.

0개의 댓글