실전 JavaScript

콘솔의 출력과 동작 방법의 개선

//현재 웹페이지의 모든 텍스트에서 
var entireText = document.getElementsByTagName('body')[0].innerText;

// 단어들을 쪼갠 후에 
var splitedText = entireText.split(' ');

//등장 횟수를 계산하고
var countedWord = {};
for(var i=0; i<splitedText.length; i++){
    var word = splitedText[i].toLowerCase();
    if(countedWord[word] == undefined){
         countedWord[word] = 1;
    } else {
         countedWord[word] = countedWord[word] + 1;
    }
}

// 정렬 한 후에
var countedWordArr = new Array();
for(var name in countedWord){
    countedWordArr.push([name, countedWord[name]])
}

countedWordArr.sort(function(a, b){
    return a[1] - b[1];
})

// 콘솔창에 출력한다
for(var i = 0; i < countedWordArr.length; i++){
    console.log(countedWordArr[i][0], countedWordArr[i][1])
}

 

댓글

댓글 본문
작성자
비밀번호
  1. JustStudy
    2016.07.19 화
    고맙습니다 3.
  2. JustStudy
    2016.07.04 월
    고맙습니다 2.
  3. JustStudy
    고맙습니다
  4. 코딩!
    감사합니다
  5. 골뱅이미디어스크린앤드
    감사합니다!
    덕분에 공부가 많이 되었네요^^
    근데 쭉-볼때는 다 이해가 되는데 돌아서면 또 까먹을거 같아여ㅠㅠ
    한번씩 들어와서 다시 봐야겠어여 ㅋㅋ

    한가지 안 좋은거는 선생님 목소리가 너무 좋아서 스르르~눈이 감기고, 어느새 자고 있다는...^^;;
  6. egoing
    예 이건 이상적인 코드가 아닙니다. 그렇게 때문에 오히려 교육적입니다.라고 스스로 위로 중 ㅠㅠ
    대화보기
    • 지그프리드
      잘 보았습니다.
      자바는 code.org 모든 기초 게임과 코드 컴벳 맛보기 빼고는 경험이 없지만
      C기초는 경험은 있어서 복합되서 이해가 가기는 잘 가네요. 익숙해지려면 직접 따라해야겠지만요.

      programming
      program
      이런 식의 각종 동사 변형도 하나의 단어로 카운팅되는 방법이 있으면 좋겠군요.
      // 혹은 연이어서 보여주는 복합 정렬이라도. 어차피 내부적으로 같이 카운팅해줘야 되겠죠;
      이것의 세밀함까지는 너무 힘들려나요.
      스펠이 완전 포함되는 형태까지는 가능할 것 같군요.
      문제는 변형되면서 변하는 형태의 동사들은 사전참조까지 가야하려나요 오버인가요.
      간단한 대표적인 전형적인 정해진 변형정도는 넣어서 카운팅 가능할려나요.

      자바 경험 거의 없는 어설픈 얼핏 생각이긴 한데,
      객체를 안거치고 한번에 배열에 넣을 수는 없었을까 하는 생각도 좀 들기도 하고요.
      물론 안될 수도 있고요.

      저는 일단은 1회 공부는 여기까지네요.
      이런 것이 있다는 것을 알았으니 나중에 필요하면 더 공부해야겠고요 ^^

      감사합니다.
    버전 관리
    egoing
    현재 버전
    선택 버전
    graphittie 자세히 보기