1. 글자세기('aab'); 를 실행합니다.
2. 첫 루프를 돌 때 결과[a] 는 undefined 입니다. 따라서 if(결과[a] > 0) 는 거짓이므로 결과[a] = 1; 이 됩니다.
여기까지: 결과 = {'a': 1};
3. 두 번째 루프입니다. 두 번째 글자도 'a' 입니다. 앞에 (2)에서 결과['a']는 1이 되었으므로 if(결과[a] > 0)는 참입니다. 따라서 1을 더해줍니다.
여기까지: 결과 = {'a': 2};
4. 세 번째 루프입니다. 세 번째 글자는 'b'입니다. if(결과[a] > 0) 는 if(결과['b'] > 0) 가 되겠죠? 결과['b']는 현재 undefined이므로 결과['b'] = 1 이 할당됩니다.
여기까지: 결과 = {'a': 2, 'b': 1};
유의사항: 결과[a]와 결과['a']가 다르다는 점에 유의해서 코드를 읽으세요.