새로 배운 메서드 혹은 메서드를 알고는 있었지만 새로 알게된 사용 방법을 적어보려고 한다.
sort()
정렬을 시행해주는 메서드.
기본 사용법은 아래와 같다.
// 기본적인 오름차순 정렬
array.sort();
// 함수를 이용한 내 마음대로 정렬
array.sort(funtction(a,b){
//내가 정하는 정렬 기준
});
sort 메서드의 function부분을 찾아보면 다음과 같은 설명이 있다.
조금 더 간략히 적어보자면,
function의 파라미터는 array의 element를 a와 b로 받는데 이 a와 b를 비교해서
-일 경우 오름차순으로 정렬, +일 경우 내림차순으로 정렬, 0일 경우 정렬을 실행하지 않는다.
이 때, a와 b가 element를 받아오기 때문에
element가 객체라면 a[price], b[price]와 같은 방식으로 element 내 객체의 key값인 price를 기준으로 정렬할 수도 있다.
만약 element가 문자열을 받아온다면 a[1], b[1]과 같이 문자열의 n번째 문자끼리를 비교하여 정렬할 수도 있다.
replace()
글자를 찾아 원하는 글자로 바꿔주는 메서드.
기본 사용법은 아래와 같다.
//기본 사용법
str.replace('찾을 문자열','변경할 문자열')
바꿀 문자열을 직접 입력하거나 정규 표현식을 사용할 수도 있다.
찾을 문자열과 같은 문자를 찾는데 제일 처음 찾은 문자 하나만을 변경한다.
//테스트
let coffee = '아이스 아메리카노';
let test = coffee.replace('아','에');
console.log(test) // 에이스 아메리카노
모든 글자를 바꾸기 위해서는 '정규 표현식'을 사용해야 한다.
// 정규 표현식을 이용한 모든 문자열 변경
str.replace(/찾을문자열/gi,'변경할 문자열')
이와 같은 방식을 사용하면 문자열 내 모든 글자를 바꿔줄 수 있다.
이 때, 주의할 점은 찾을 문자열에 따옴표(' ')를 넣지 않는다는 것이다.
조금 더 부가설명을 해보자면 다음과 같다.
g : 전체 모든 문자열을 변경한다는 의미 (global)
i : 영문 대소문자 무시, 모든 일치하는 패턴을 검색한다는 의미 (ignore)
split()
지정한 구분자를 이용하여 여러 개의 문자열로 나누어 배열에 담아주는 메서드.
기본 사용법은 아래와 같다.
const str = 'The quick brown fox jumps over the lazy dog.';
const words = str.split(' ');
console.log(words[3]);
// Expected output: "fox"
const chars = str.split('');
console.log(chars[8]);
// Expected output: "k"
const strCopy = str.split();
console.log(strCopy);
// Expected output: Array ["The quick brown fox jumps over the lazy dog."]
출처 : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/split
String.prototype.split() - JavaScript | MDN
split() 메서드는 String 객체를 지정한 구분자를 이용하여 여러 개의 문자열로 나눕니다.
developer.mozilla.org
자신이 원하는 구분자를 파라미터에 넣고 그 파라미터를 기준으로 문자열을 나누어 배열의 형태로 리턴한다.
첫 번째 예시는 띄어쓰기를 넣었기 때문에 띄어쓰기를 기준으로 문장이 나뉜 것이다.
두 번째 예시는 빈 문자열을 넣어줌으로써 모든 글자들이 한 글자씩 리턴된 것을 볼 수 있다.
세 번째 에시는 아예 아무 것도 넣어주지 않았기 때문에 한 문장 전체가 배열의 첫 번째 인덱스로 들어간 것을 볼 수 있다.
split의 추가적인 파라미터 limit 도 있다.
split(separator, limit);
split 메서드는 주어진 separator가 등장할 때마다 문자열을 끊지만 배열의 길이가 limit가 되면 멈춘다.
'TIL' 카테고리의 다른 글
2023_10_18 TIL (1) | 2023.10.23 |
---|---|
2023_10_17 TIL (0) | 2023.10.19 |
2023_10_16 TIL (2) | 2023.10.18 |
2023_10_11 TIL (0) | 2023.10.11 |
2023_10_09 TIL [Project 코드 리뷰] (2) | 2023.10.09 |