문자열을 잘라주는 함수

kirin.log·2021년 4월 14일
0
post-custom-banner

substr(), substring(), slice() 비교

  • 세 함수 모두 문자열을 잘라주는 역할을 한다

🐥 substr()

string.substr(start, length)
  • 파라미터로 입력받은 start index부터 length 길이만큼 string을 잘라내어 반환하는 함수
  • 첫번째 글자의 index는 0에서 시작한다.
let str = "반갑습니다"

let first_char = str.substr(0, 1);
let second_char = str.substr(1, 1);
let third_char = str.substr(2, 1);
let last_char = str.substr(str.length-1, 1);

console.log(first_char)   // '반'
console.log(second_char)  // '갑'
console.log(third_char)   // '습'
console.log(last_char)    // '다'

🐥 substring()

string.substring(start, end)
  • substr() 함수와 다른 점은, 매개변수로 잘라내고 싶은 문자열의 start indexlast index를 전달한다는 것
  • 첫번째 글자의 index는 0에서 시작한다.
    ❗ substring()과 완벽하게 동일하게 작용한다. 다만 차이점은, start > end이 되면 substring()은 start값과 end값을 바꾸어서 처리한다.
    slice()는 빈 string, 즉 ""을 리턴한다
let str = "반갑습니다"

let first_char = str.substring(0, 1);
let second_char = str.substring(1, 1);
let third_char = str.substring(2, 1);
let last_char = str.substring(str.length-1, 1);

console.log(first_char)   // '반'
console.log(second_char)  // ''
console.log(third_char)   // '갑'
console.log(last_char)    // '갑습니'

let first_char = str.substring(0, 1);
let second_char = str.substring(1, 2);
let third_char = str.substring(2, 4);
let last_char = str.substring(str.length-1, 0);

console.log(first_char)   // '반'
console.log(second_char)  // '갑'
console.log(third_char)   // '습니'
console.log(last_char)    // '반갑습니'

🐥 slice()

string.slice(start, end)
  • substring() 함수와 마찬가지로 파라미터로 자를 문자열의 start indexend index를 전달
  • 첫번째 글자의 index는 0에서 시작한다.
    ❗ substring()과 완벽하게 동일하게 작용한다. 다만 차이점은, start > end이 되면 substring()은 start값과 end값을 바꾸어서 처리한다.
    slice()는 빈 string, 즉 ""을 리턴한다
let str = "반갑습니다"

let first_char = str.slice(0, 1);
let second_char = str.slice(1, 3);
let third_char = str.slice(2, 1);
let last_char = str.slice(str.length-1, 1);

console.log(first_char)   // '반'
console.log(second_char)  // '갑습'
console.log(third_char)   // ''
console.log(last_char)    // ''
profile
boma91@gmail.com
post-custom-banner

0개의 댓글