문제
- 문자열 myString의 각 문자를 순회하면서 알파벳 "l"보다 앞에 위치한 문자는 "l"로 변환, 그렇지 않으면 원래 문자를 유지하라
내가 푼 답 indexOf
function solution(myString) {
var answer = '';
var alphabet='abcdefghijklmnopqrstuvwxyz';
var lIndex = alphabet.indexOf("l")
return [...myString].map((item)=> apphabet.indexOf(item) < lIndex ? "l" : item ).join("");
}
- lIndex : indexOf를 사용하여 "l"알파벳이 몇번째 위치한지 알수있다
- map()을 활용하여 각 문자와 lIndex를 비교 하는 함수를 만들 수 있다
그 외의 답
1. replace
const solution = myString => myString.replace(/[a-k]/g,'l')
- replace() : 어떤 패턴에 일치하는 일부 또는 모든 부분이 교체된 새로운 문자열을 반환한다
- 알파벳 a-k까지 모든 문자를 l로 대체
2. for
function solution(myString) {
var answer = '';
for(let i = 0; i < myString.length; i++) {
if(myString[i] < "l") {
myString = myString.replace(myString[i], "l");
}
}
answer = myString
return answer;
}
3. map
function solution(myString) {
return [...myString].map((v) => v < 'l' ? 'l' : v).join('');
}

이번에 이른 휴가를 다녀오고 오랜만에 공부를 다시 시작하려니 뭔가 머리가 굳은 느낌이 든다.. !
다시 열심히 찾아보고 배워야지 아좌좌!!
'기초다지기 > JS 코딩테스트' 카테고리의 다른 글
[Lv0] 수 조작하기 2 (0) | 2023.07.16 |
---|---|
[js] 2차원 배열 (0) | 2023.07.02 |
Lv0 배열의 원소만큼 추가하기 (0) | 2023.05.21 |
Lv.0 정수 리스트 중 첫번째 음수 인덱스 값 구하기 (1) | 2023.05.14 |
string 특정 문자 대문자로 변경하기 (0) | 2023.05.11 |