WEB2 - JavaScript

배열과 반복문

소스코드

변경사항

댓글

댓글 본문
  1. Aymon21
    2022-01-22 감사합니다
  2. 아까그애
    2022-01-21 완료
  3. 맛없는콩두유
    22.01.20 와우 !!!!
  4. 열정jk
    220117 감사합니다
  5. 지원이아빠
    좀 잘못알고 계신것 같아, 나중에 보시는 분들 참고하라고 적어봅니다.

    document.write(); //이건 괄호 안에 있는 내용을 출력해줍니다.
    document.write(안녕); //이렇게 치면 안녕을 출력하지 않습니다. 안녕이 변수인지 텍스트인지 모르거든요.
    document.write('안녕'); // 이건 안녕 이라고 출력합니다. 따옴표안에 있는건 텍스트라는 뜻이니까요.

    var coworkers = ['egoing','leezche','duru','taeho'];
    document.write(coworkers[0]); // 이건 변수를 가져옵니다. coworkers라는 배열변수의 0번째에 있는 egoing이 출력됩니다.
    document.write('안녕' + '하세요'); // 이건 안녕하세요 가 출력됩니다. 숫자에서 +는 수를 합치는거지만, 문자열에서는 문자열을 앞뒤로 붙여주는역할이니까요.
    document.write('안녕' + coworkers[0]); // 이렇게하면 안녕egoing 이라고 나옵니다. 변수를 사용하면 변수가 가르키는 (지금의 경우 egoing)이 그자리를 대체한다고 보시면 됩니다.
    즉, document.write('안녕' + coworkers[0]); 는 document.write('안녕' + 'egoing'); 과 같은 뜻입니다.

    Münster 님의 코드에서 에러가 난 이유는
    document.write(+coworkers[i]+); // 앞뒤에 +연산자가 있는데 그걸 더해줄게 없었기 때문입니다. 크롬에서 F12누르고 콘솔을 열어둔 상태에서 페이지를 열어보면 에러메세지가 뜰껍니다. 그게 이유입니다.

    YJ26 님의 코드에서 에러가 난 이유는
    document.write('+coworkers[i]+'); // 따옴표안에 있는 글씨는 전부 문자열로 읽기때문입니다. 그래서 변수를 가져오지못하고 그 내용 그대로 출력을 하는거죠. while문에 따라 총 4번 출력해서 그런 모양이 나온겁니다.

    나란히 나오게 하고싶으면 다음과 같이 쓰면 됩니다.
    document.write(coworkers[i]); // 이렇게 쓰면 차례대로 불러와서 egoingleezchedurutaeho 처럼 나오게 됩니다.

    inline / block element 와는 상관없는 거죠.
    대화보기
    • 이거왤케어려워
      211231 완료 감사합니다.
    • 빡효
      21.12.28 완료
    • commonerd
      2021-12-23
      고맙습니다
      <h1>Loop & Array</h1>
      <script>
      var coworkers = ['egoing','leezche','duru','taeho'];
      </script>
      <h2>Co workers</h2>
      <ul>
      <script>
      var i = 0;
      while(i < coworkers.length){
      document.write('<li><a href="http://a.com/'+coworkers[i]+'">'+coworkers[i]+'</a></li>');
      i = i + 1;
      }
      </script>
      </ul>
    • 소설가
      2021-12-19 완료
      고맙습니다.
    • 완료
    • 롤링
      오후 2:17 2021-12-14
    • 민택기
      21.12.05 완료
    • 블랑카
      21.11.27
    • survive
      21.11.23
    • 개발맨
      완료
    • 21-10-30. 3타.
    • 21-10-28. 2타.
    • 21-10-27. 1타.
    • 해피랜저
      21.10.20 감사!
    • 이가은
      21년 10월 19일
    • navywood
    • 안제경
      2021.10.08
    • 야옹아왈해봐
      211006
    • inventorh
      2021.09.28
    • 김관호
      2021.09.25.
    • Münster
      오오 감사합니다!!!!!! 이해하는데 많은 도움이 되었어요!!! :) b
      대화보기
      • 이미 지나서 도움이 되실지 모르겠지만..
        CSS 과정도 들으셨다면 아마 <span>이 inline element 라는걸 들으셨을 것 같아요! (이 과정 안하시구 먼저 자바스크립트부터 들으시는 것 같아서 이해를 못하지 않았나 싶습니다)
        <b> <i>도 마찬가지로 inline element라서 화면전체가 아닌 특정 문자에 대해 그 문자에 맞는 사이즈에 딱맞게만 적용범위가 설정되서 줄이 넘어가지 않고 줄 이어져서 글이 작성되는 것이고

        <div>와 같이 block level element를 사용하신다면 이건 특정 코드에 대해서만 공간이 적용되는게 아니라 화면 전체로 적용이 되서 공간이 너무 커서 글씨가 줄바꿈이 됩니다. <ol><li><p>도 마찬가지구요 !

        엄... 이부분은 CSS 파트를 들으시면 명쾌하게 이해가 될 것 같습니다! 아무래도 코딩이다 보니 직접 보셔야 이해가 될 듯해요.. ㅠㅠㅠ

        그리고 어떤 변수를 변수화 하여 사용하려면 '++' 형태가 기본이고 document.write()에서 () 안에 값들을 하나하나 나타내려면 작은따움표를 한번더 써주셔야합니다 이렇게요! document.write(''+coworkers+'')

        그냥 '+coworkers[i]+'라고만 적으셔서 당연히 웹페이지에서 출력될땐 문자열 데이터 타입으로써 coworkers[i] 그대로 출력이 된 것 같네요 4번 출력이 된건 coworkers라는 글자가 아닌 hi 라고 바꿔도 4번 나올것이고 [i]를 없애고 hi만 적어도 4번 나올겁니다. 왜냐하면 4번 반복되도록 배열속에 4개의 원소를 넣은 상태고 i=0부터 i=3까지 다 돌아도 4번다 돌면서 4번 적으라고 한 반복문대로 작동 할테니까요
        대화보기
        • 로로루리
          a태그 안에 링크부분을 각각 배열마다 다르게 설정할 수 있을까요..?
        • supernova
          <a href="http://a.com/'+coworkers[i]+'">
          이 부분에서 굳이 +coworkers[1]+를 쓰는 이유가 무엇인가요?
          바로 뒤에도 똑같은 것이 오지 않나요?
        • Münster
          오오 말씀하신대로 <b> <i> <span>했을 때 그렇게 줄줄이 나오네요..!!!!
          뭔가 왜그런지알수없어 아쉽지만 :'-) 덕분에 줄줄이 쓰는 건 성공했어요!! 감사해요 ㅎㅎㅎ
          대화보기
          • hwangwonjoon
            2021.08.13 수강완료
          • </script> 태그를 끝에 붙여주고
            document.write(+coworkers[i]+); 부분을
            document.write('+coworkers[i]+');로 바꿨을 때 결과가
            +coworkers[i]++coworkers[i]++coworkers[i]++coworkers[i]+
            로 나오더라구요

            '+coworkers[i]+' 사이에 <b>나 <i>같은 태그를 넣어서
            document.write('<b>'+coworkers[i]+'</b>');로 짰을 때는 말씀하신대로
            egoingleezchedurutaeho 로 나오고

            <p>나 <h1>같은 태그를 넣었을 때는
            egoing
            leezche
            duru
            taeho
            로 출력됩니다.

            왜 이런건지는 저도 초보라서 잘 모르겠네요...ㅠㅠ
            대화보기
            • Münster
              만약에 li로 처리하지 않고
              <script>
              var i=0;
              while (i < coworkers.length) {
              document.write(+coworkers[i]+);
              i = i + 1;
              }
              라고 했을 때, 뭔가 한줄로 다닥다닥붙어서 나올 수 있지 않을까 생각했었는데 아무것도 안 나오게 되는 이유는 뭔가요..? 아직 문법 제대로 이해가 안 됐나봐요 흑ㅎ규
            • gogo!
            • 조유빈
              ㅇㄹ
            • 아자가자
              210727 성공
            • 김렛
              var i = 0 ...
              설명을 들을때는 이해가 되는데 막상 혼자 해보려니 눈앞이 깜깜해지네요 ..
            • 고영히
              0723 완료
            • labis98
              20210718 complete!
            • 도햐
              역시 반복문은 어떤 언어에서든 중요하군요,,, 반복문의 힘을 다시 한 번 느끼구 갑니다!
            • 윤동욱
              2178
            • Jeonghee Gwon
              20210702
            • B=loom
              2021.07.01
            • 김휘철
              잘봤습니다~
            • super1Nova
              210519
            • 초딩 개발자
              2021/05/08
            • chimhyangmoo
              2차 - 21.05.06
            • 감사합니다!!!
            • 고맙습니다
            • 요모
              2021-03-29
            버전 관리
            egoing
            현재 버전
            선택 버전
            graphittie 자세히 보기