문제 이해하기
이번 글에서는 두 개의 문자열을 인수로 받는 JavaScript 함수를 작성하는 방법을 알아보겠습니다. 첫 번째 문자열은 오타가 섞여 있는 잘못 입력된 문자열이고, 두 번째 문자열은 그것의 올바른 원본 문자열입니다. 함수로 전달되는 두 문자열은 항상 길이가 같다고 가정할 수 있습니다.
함수가 반환해야 할 값은 첫 번째 문자열에 존재하는 실수(오타)의 총 개수입니다.
해결 접근 방식
두 문자열의 길이가 동일하므로, 같은 인덱스에 위치한 문자들을 하나씩 순서대로 비교하면 됩니다. 반복문을 돌면서 각 위치의 문자가 서로 일치하는지 확인하고, 일치하지 않는 경우 카운트를 1씩 증가시킵니다. 모든 문자를 검사한 뒤 최종 카운트를 반환하면 됩니다.
예제
다음은 전체 코드입니다 −
const str1 = 'Tkos am er exakgrg fetwnh';
const str2 = 'This is an example string';
const countMistakes = (mistaken, correct) => {
let count = 0;
for(let i = 0; i < mistaken.length; i++){
if(mistaken[i] === correct[i]){
continue;
};
count++;
};
return count;
};
console.log(countMistakes(str1, str2));
출력
콘솔에 출력된 결과는 다음과 같습니다 −
15