#1 코딩테스트 [.split, .charAt, .slice, .join, .sort]

2023. 9. 10. 23:29·⚡ 코딩테스트 ⚡/JavaScript

1. .split()

문자열을 쪼개고 싶을 때 사용

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/split

 

String.prototype.split() - JavaScript | MDN

split() 메서드는 String 객체를 지정한 구분자를 이용하여 여러 개의 문자열로 나눕니다.

developer.mozilla.org

 

split();
split(separator);
split(separator, limit);
function solution(s) {

// s = '4 6 2 5'

    const arr = s.split(' ').map(Number);
    
    // .map(Number) 숫자 배열
    
    const min = Math.min(...arr);
    const max = Math.max(...arr);
    return `${min} ${max}`;
}

 

2. .charAt()

문자열(string)에서 원하는 index의 문자를 얻을 때

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/charAt

 

String.prototype.charAt() - JavaScript | MDN

charAt() 함수는 문자열에서 특정 인덱스에 위치하는 유니코드 단일문자를 반환합니다.

developer.mozilla.org

str.charAt(index);
function solution(s) {

// s = "3people unFollowed me"

let txtArr = s.split(" ")
let newArr = []
txtArr.forEach((ele,idx) => {
    if(typeof(ele.charAt(0))==="string"){
        let first = ele.charAt(0).toUpperCase()
        
        // 첫번째 index 대문자
        
        let rest = ele.slice(1).toLowerCase()
        newArr.push(first + rest)
    } else {
        newArr.push(ele)
    }
});
    return newArr.join(" ")
}

 

3. .slice()

문자열, 배열에서 원하는 부분만 추출할 때 사용

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/slice

 

Array.prototype.slice() - JavaScript | MDN

slice() 메서드는 어떤 배열의 begin 부터 end 까지(end 미포함)에 대한 얕은 복사본을 새로운 배열 객체로 반환합니다. 원본 배열은 바뀌지 않습니다.

developer.mozilla.org

    arr.slice([begin[, end]])
function solution(s) {

// s = "3people unFollowed me"

let txtArr = s.split(" ")
let newArr = []
txtArr.forEach((ele,idx) => {
    if(typeof(ele.charAt(0))==="string"){
        let first = ele.charAt(0).toUpperCase()
        let rest = ele.slice(1).toLowerCase()
        
        // slice(1) => 1번 index부터 마지막 까지 소문자
        
        newArr.push(first + rest)
    } else {
        newArr.push(ele)
    }
});
    return newArr.join(" ")
}

 

4. .join()

배열을 문자열로 변환할 때 사용

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/join

 

Array.prototype.join() - JavaScript | MDN

join() 메서드는 배열의 모든 요소를 연결해 하나의 문자열로 만듭니다.

developer.mozilla.org

arr.join([separator]);
function solution(s) {

// s = "3people unFollowed me"

let txtArr = s.split(" ")
let newArr = []
txtArr.forEach((ele,idx) => {
    if(typeof(ele.charAt(0))==="string"){
        let first = ele.charAt(0).toUpperCase()
        let rest = ele.slice(1).toLowerCase()
        newArr.push(first + rest)
    } else {
        newArr.push(ele)
    }
});

// 배열인 newArr을 " " 공백을 사이에 넣어 문자열로 변환

    return newArr.join(" ")
}

 

5. .sort()

오름차순(Asc) 내림차순(Desc) 정렬시 사용

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/sort

 

Array.prototype.sort() - JavaScript | MDN

sort() 메서드는 배열의 요소를 적절한 위치에 정렬한 후 그 배열을 반환합니다. 정렬은 stable sort가 아닐 수 있습니다. 기본 정렬 순서는 문자열의 유니코드 코드 포인트를 따릅니다.

developer.mozilla.org

function solution(A,B){

// 오름차순

let aAsc = A.sort((a,b)=> a-b)

// 내림차순

let bDesc = B.sort((a,b)=>b-a)
let sum = 0
A.forEach((ele,idx) => {
    sum = sum + aAsc[idx]*bDesc[idx]
});
    return sum;
}
'⚡ 코딩테스트 ⚡/JavaScript' 카테고리의 다른 글
  • #5 코딩테스트 [깊은 복사, .splice, break, for...of, 대/소문자 판별(ASKII)]
  • #4 코딩테스트 [.findIndex, +, .filter, set]
  • #3 코딩테스트 [.map, .reduce, .RegExp, .toString(=String), .parseInt(=parseFloat)]
  • #2 코딩테스트 [.replace, .replaceAll, .includes, .reverce, **]
Yeonhub
Yeonhub
✨ https://github.com/yeonhub 📧 lsy3237@gmail.com
  • Yeonhub
    비 전공자의 Be developer
    Yeonhub
  • 전체
    오늘
    어제
    • 전체보기 (169)
      • 🔍 Tech 🔍 (19)
        • Front-End (11)
        • Back-End (4)
        • AI (1)
        • Server (1)
        • Etc (2)
      • 💡 원티드 프리온보딩 챌린지 💡 (14)
        • PRE-ONBOARDING_AI (11월) (1)
        • PRE-ONBOARDING_FE (2월) (2)
        • PRE-ONBOARDING_FE (1월) (2)
        • PRE-ONBOARDING_FE (12월) (9)
      • 🔥 부트캠프-웹 개발 🔥 (118)
        • HTML5 (7)
        • CSS3 (21)
        • JavaScript (27)
        • JavaScript_advanced (9)
        • React (24)
        • Next (1)
        • MYSql (5)
        • Node (5)
        • 오늘하날(개인프로젝트) (12)
        • 이젠제주투어(팀프로젝트) (7)
      • 💻 CS 💻 (1)
        • 알고리즘 (1)
      • ⚡ 코딩테스트 ⚡ (11)
        • JavaScript (11)
      • 📚 Books 📚 (6)
        • 클린 아키텍처 (2)
        • 인사이드 자바스크립트 (4)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • Github
  • 공지사항

  • 인기 글

  • 태그

    expo fcm push
    node.js fcm
    react native firebase analytics
    컴파운드 컴포넌트 패턴
    라스콘4
    node fcm
    bottom sheet
    react native admob
    react native expo fcm
    expo fcm
    react native bottom sheet
    php node
    expo node fcm
    expo admob
    node cron
    react native analytics
    expo map
    rn admob
    expo google map
    javascript fcm
    rn bottom sheet
    node crontab
    expo 길찾기
    Node
    react vite
    프론트엔드 테스트코드
    python node
    expo 지도
    라스콘
    expo deep linking
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Yeonhub
#1 코딩테스트 [.split, .charAt, .slice, .join, .sort]
상단으로

티스토리툴바