프로그래머스 한 번만 등장한 문자 문제 링크
나의 풀이
function solution(s) {
let answer = [];
const mapS = new Map();
for(const word of s) {
mapS.has(word) ? mapS.set(word, mapS.get(word) + 1) : mapS.set(word, 1)
}
mapS.forEach((_, value) => {
mapS.get(value) === 1 && answer.push(value)
})
return answer.sort().join('');
}
문제를 풀면서
Map
객체
- 내일 딥다이브 공부할 부분이어서 정리는 내일 추가로 올릴 예정!(2월 23일 기준)
다른 풀이를 보면서
||
연산자를 이용하여 ①의 코드 간결하게 바꿔보기
String.prototype.lastIndexOf()
- 주어진 값과 일치하는 부분을
fromIndex
로부터 역순으로 탐색하여, 최초로 마주하는 인덱스를 반환
- 일치하는 부분이 없을 경우 -1 반환
str.lastIndexOf(seachValue[, fromIndex])
seachValue
- 탐색할 문자열
- 빈 값일 경우
fromIndex
를 반환
fromIndex
- 탐색의 시작점으로 사용할 인덱스
- 기본값 :
+Infinity
fromIndex >= str.length
인 경우, 모든 문자열을 탐색
fromIndex < 0
인 경우, 0을 지정한 것과 동일