Prac0311
701
2021-03-17 17:23:17
2
167

javascript 아스키 루프



for( let i = 97; i < 256; i++ )
{
    console.log( i + ' ' + String.fromCharCode(i) )
}
저 코드에서 아스키가 a부터 z까지만 출력되게 하고 싶습니다.

for( let i = 97; i < 122; i++ )  이런식으로는 줘도 되지만 반드시 256; 까지 써야하는 상황입니다.

256으로 해놓고 a부터 z가 여러 번 반복적으로 출력되게 하고 싶은데 어떻게 코드를 짜야할 지 감이 안잡히네요..  
0
  • 답변 2

  • 잡초123
    218
    2021-03-17 17:34:57 작성 2021-03-17 17:38:05 수정됨

    질문을 잘 이해를 못하겠는데

    아스키코드가 a-z 일때만 console.log를 찍어주고 싶은게 아니라

    아스키코드가 122번부터는 다시 a부터 console.log를 찍어주고 싶다는 말씀인가요?

    아니면 a-z 사이 일때만 console.log를 찍어주고 싶다는건가요.

    만약 후자라면 방법이야 많지만 질문자님 의도대로

    for(let i=97;i<256;i++){

        let ack = String.fromCharCode(i);    

        if(ack.replace(/[^a-z]/g,"") != ""){

            console.log(i + " " +ack);

        }

    }

    이런 형식이 있지 않을까 싶습니다.

  • rezigrene
    1k
    2021-03-17 17:57:25



    추가로 첫번째 답변자 분의 경우가 질문의 의도가 반복출력인 경우에대한 답변입니다.

    for (let i = 97; i < 256; i++) {
        let c = String.fromCharCode(((i - 97) % 26) + 97)
        console.log(`${i}: ${c}`)
    }






  • 로그인을 하시면 답변을 등록할 수 있습니다.