알파벳 대소문자로만 이루어진 문자열 my_string이 주어질 때, my_string에서 'A'의 개수, my_string에서 'B'의 개수,..., my_string에서 'Z'의 개수, my_string에서 'a'의 개수, my_string에서 'b'의 개수,..., my_string에서 'z'의 개수를 순서대로 담은 길이 52의 정수 배열을 return 하는 solution 함수를 작성하는 문제이다.
function solution(my_string) {
    const counts = new Array(52).fill(0);    
    for (let i = 0; i < my_string.length; i++) {
        let asciiCode = my_string.charCodeAt(i);
        if (asciiCode >= 97) {
            counts[asciiCode - 71]++;
        } else {
            counts[asciiCode - 65]++;
        }
    }    
    return counts;
}
const counts = new Array(52).fill(0);   
let asciiCode = my_string.charCodeAt(i);
charCodeAt메서드는 문자열에서 특정 위치의 문자를 ASCII 코드 값(숫자 형태)으로 변환해준다.asciiCode를 선언하고, my_string의 i번째 문자의 ASCII 코드 값을 이 변수에 저장한다.// 현재 문자가 소문자인지 확인한다.
// 소문자의 ASCII 코드 범위는 97('a')부터 122('z')
if (asciiCode >= 97) {
    counts[asciiCode - 71]++;
} else {
  	// 대문자의 ASCII 코드 범위는 65('A')부터 96('Z')
    counts[asciiCode - 65]++;
}
function solution(my_string) {
    const counts = new Array(52).fill(0);
  
  	// 문자열 my_string의 각 문자에 대해 반복한다.
    for (let i = 0; i < my_string.length; i++) {
        let asciiCode = my_string.charCodeAt(i);
        if (asciiCode >= 97) {
            counts[asciiCode - 71]++;
        } else {
            counts[asciiCode - 65]++;
        }
    }
  	// 계산된 출현 횟수 배열을 반환한다.
  	// 이 배열은 각 알파벳 문자가 my_string 내에 나타나는 횟수를 순서대로 저장한다.
    return counts;