문자열을 입력받아 문자열을 구성하는 각 문자(letter)를 키로 갖는 객체를 리턴해야 합니다.
각 키의 값은 해당 문자가 문자열에서 등장하는 횟수를 의미하는 number 타입의 값이어야 합니다.
입력으로는 string 타입의 공백이 없는 문자열
출력 으로는 각 문자를 키로 갖는 객체 리턴
(빈문자열일때는 빈객체 리턴)
입출력 예시
let output = count('banana');
console.log(output); // --> {b: 1, a: 3, n: 2}
function count(str) {
// 입력 : 문자열
// 출력 : {문자열의 각 문자 : 나온 횟수}
let obj = {};
// 해당 문자와 같은 키가 아직 없다 (undefined)
// 키를 만들어 주고, 값을 0으로 넣어준다
for (let i = 0; i < str.length; i++) {
if (obj[str[i]] === undefined) {
obj[str[i]] = 0;
}
obj[str[i]]++;
}
return obj;
}
문자열을 입력받아 가장 많이 반복되는 문자(letter)를 리턴
입력으로는 string 타입의 공백이 있는 문장
출력으로는 string 타입 리턴
주의 사항
띄어쓰기는 제외, 많이 반복되는 문자가 여러개일경우 먼저 나온문자 리턴
빈 문자열을 입력받은 경우, 빈 문자열을 리턴
입출력 예시
let output = Frequent('apples not oranges');
console.log(output); // --> 'p'
output = Frequent('hello world');
console.log(output); // --> 'l'
output = Frequent(' ');
console.log(output); // --> ''
output = FrequentC('');
console.log(output); // --> ''
output = Frequent('abba');
console.log(output); // --> 'b'
function mostFrequent(str) {
// 위의 문제는 객체를 리턴 {문자 : 나온 횟수}
// 이 문제는 가장 많이 반복 된 문자 리턴
let frequent = ''; //가장 횟수가 많은 문자 저장
let frequentCount = 0; // 반복 횟수 저장
let obj = {}
for (let i = 0; i < str.length; i++){
if(str[i] === ' '){
continue;
//continue 현재 반복에서 명령문의 실행을 종료하고
//반복문의 처음으로 돌아가여 루프문의 다음 코드를 실행
}
// 문자가 몇번 반복 되었는지 카운트
if (obj[str[i]] === undefined){
obj[str[i]] = 0;
}
obj[str[i]]++
// 가장 많이 나온 문자 찾기
if(obj[str[i]] > frequentCount){
frequentCount = obj[str[i]] // 가장 많이 나온 문자의 횟수
frequent = str[i] // 가장 많이 나온 문자
}
}
return frequent
}