JavaScript DAY03 (2022.10.21)

준영·2022년 10월 21일
1
post-thumbnail
/* JavaScript DAY03 2022.10.21 */

// 배열 메서드
// join() ## 배열의 모든 원소를 문자열로 변환하고 이어 붙여서 반환한다. 
const arrayA = [1, 2, 3];
// 별도로 구분자 문자열을 지정하지 않으면 콤마(,)가 기본값으로 사용된다.
const arrayB =  arrayA.join();
// 출력결과: '1,2,3'
console.log(arrayB);
// 별도로 콤마를 지정한 경우
const arrayC = arrayA.join(", ");
// 출력결과: '1,2,3'
console.log(arrayC);

/* ---------------------------------------------------------------- */

/*
split()
##
Array.join() 메서드는 String.split() 메서드와 반대되는 기능을 한다. 
String.split()은 문자열을 조각들로 분리하고 이 조각들을
우너소로하는 배열을 생성하여 반환한다.
*/
const stringA = "안녕하세요";
const stringB = stringA.split("");
console.log(stringB[2]);

/* ---------------------------------------------------------------- */

/*
reverse()
## 배열 안의 원소 순서를 반대로 정렬하여 반환한다. 
순서가 뒤바뀐 새로운 배열을 생성하는 것이 아닌, 이미 존재하는 배열의 순서를 뒤바꾼다.
*/
const arrayD = arrayA.reverse();
// 출력결과: [ 3, 2, 1 ]
console.log(arrayD);
// 출력결과: '3, 2, 1'
console.log(arrayD.join(", "));

/* ---------------------------------------------------------------- */

// sort() ## 배열 안의 원소들을 정렬하여 반환한다.
const arrayE = ["banana", "cherry", "apple"];
// 별도의 전달인자 없이 호출하면, 알파벳순으로 정렬한다.
// 출력결과: [ 'apple', 'banana', 'cherry' ]
console.log(arrayE.sort());

// 알파벳순이 아닌 다른 순서로 배열을 정렬하려면, sort() 메서드의 전달인자를 통해 비교 함수를 직접 명시해야한다.
const arrayF = [33, 4, 1111, 2222];
// 출력결과: [ 1111, 2222, 33, 4 ] - 알파벳순
console.log(arrayF.sort());
// 출력결과: [ 4, 33, 1111, 2222 ] - 번호순
console.log(arrayF.sort(function(a, b){
  return a - b;
}));

/* ---------------------------------------------------------------- */

/*
concat()
##
본래 배열의 모든 원소에 concat() 메서드의 전달인자를 전부 이어붙인 배열을 새롭게 생성하여 반환한다.
그러나 중복하여 중첩된 배열은, 그 배열에 속한 배열의 원소를 분리해내지 않는다!
*/

const arrayConcat = [1, 2, 3];

// 출력결과: [ 1, 2, 3, 4, 5 ]
arrayConcat.concat(4, 5);
// 출력결과: [ 1, 2, 3, 4, 5 ]
arrayConcat.concat([4, 5]);
// 출력결과: [ 1, 2, 3, 4, 5, 6, 7 ]
arrayConcat.concat([4, 5], [6, 7]);
// 출력결과: [ 1, 2, 3, 4, 5, [ 6, 7 ] ]
arrayConcat.concat(4, [ 5, [ 6, 7 ] ]);

/* ---------------------------------------------------------------- */
/*
slice()
##
sice() 메서드는 배열의 일부분 혹은 부분 배열을 반환한다.
전달인자를 두개 받는데, 각 인자는 반환될 부분의 처음과 끝을 각각 명시한다.
첫 번째 전달인자가 지정하는 위치부터 두 번째 전달인자가 지정하는 위치를 제외한 그 사이 모든 원소를 포함한다.
만약 전달인자를 하나만 명시하면, 그 위치에서 배열 끝까지의 모든 원소를 포함하는 부분 배열을 반환한다.
전달 인자가 음수라면 배열의 마지막 원소에서 상대적인 위치로 배열 원소들을 지정한다.
ex) -1이면 배열의 마지막 원소를, -3이면 배열의 마지막 원소부터 앞쪽으로 세번째 원소를 가리킨다.
*/

const a = [1 ,2 ,3 ,4 ,5];
// 출력결과: [ 1, 2, 3 ]
a.slice(0, 3);
// 출력결과: [ 4, 5 ]
a.slice(3);
// 출력결과: [ 2, 3, 4 ]
a.slice(1, -1);
// 출력결과: [ 3 ]
a.slice(-3, -2);


profile
개인 이력, 포폴 관리 및 기술 블로그 사이트 👉 https://aimzero-web.vercel.app/

0개의 댓글