중복문자 제거 문제
indexOf() 메소드를 이용하면 찾고자 하는 요소를 찾을 경우 해당 값의 인덱스를 반환합니다. 만약 요소가 없을 경우 -1을 리턴합니다.
(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/indexOf)
function indexOf(str) {
let answer;
for (let i = 0; i < str.length; i++) {
if (i === str.indexOf(str[i])) answer += str[i];
}
return answer
}
const str = "ellfmseofksfk";
console.log(indexOf(str)); // "elfmsok"
아래와 같이 풀면 지정된 문자가 몇 번 중복됐는지 찾을 수 있습니다.
function indexOf(str) {
let answer;
let pos = str.indexOf("k")
while (pos !== -1) {
answer++;
pos = str.indexOf("k", pos + 1)
}
}
console.log(indoxOf("ellfmseofksfk")); // 2