무료
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
변수명에 $을 붙이는 이유가 무엇인가요?
선생님 안녕하세요 강의 듣기 전에 책을 사서 한번 훑어봤는데요 변수명에 $을 붙이는 이유가 무엇인가요? 그리구 $가 붙고 안붙고 차이가 있나요? 예제 보면 어떤건 붙고 안붙고 하더라구요
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
id와 클래스 관련해서 질문 있습니다!
예를 들어 button 태그 3개에 클래스 네임을 동일하게 'class'라고 주었을 때 document.querySelector('.class')로 선택하면 태그는 하나만 선택이 됩니다. querySelectorAll을 하면 3개의 태그가 모두 선택이 되구요 근데 id로도 테스트를 해보니까 클래스와 동일한 결과가 나왔습니다. 그렇다면 id와 클래스 사이에 기능적으론 특별한 차이점이 없는 거 아닌가요?
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
질문드립니다.
객체 리터럴의 속성 이름은 문자열이어야 하지만 그냥 숫자 2를 속성 이름으로 해도 오류가 나지 않고 잘 작동하는데, 그렇다면 객체 리터럴의 속성 이름을 무조건 문자열로 할 필요는 없는 건가요?
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
9-5강 승부 판단하기 부분 문의드립니다.
const checkWinner = (target) => { let rowIndex; let cellIndex; rows.forEach((row, ri) => { row.forEach((cell, ci) => { if(cell === target) { rowIndex = ri; cellIndex = ci; console.log(ri,ci) } }) }) let hasWinner = false; if( rows[rowIndex][0].textContent === turn && rows[rowIndex][1].textContent === turn && rows[rowIndex][2].textContent === turn ){ hasWinner = true; } console.log(hasWinner) } 소스를 보면 위와같이 forEach문을 사용해서 현재 내가 클릭한 row,cells의 index값을 가져오는 소스입니다. 소스를 분석해보면 클릭한 위치를 찾기 위해서는 위와같은 소스가 만들어져야 한다는 것을 알 수 있습니다. 그런데 앞장부터 책을 보면서 진행을 하다보면 생각하는 과정이 어떻게 되서 위와같은 checkWinner라는 함수를 만들고 그 안에서 forEach를 사용해서 만들어지는지 전혀 모르겠어요.ㅠㅠ 그러니까.. [ [td],[td],[td] [td],[td],[td] [td],[td],[td] ] 이런식으로 배열이 만들어져서 그중에 2행 2열의 td의 클릭한 값을 가져오기 위해서는 제로초님이 만드신 forEach문을 사용해서 가져오면 된다는것은 알 수 있는데.. 그런 소스가 만들어지기까지의 과정을 모르겠습니다. 어떻게 생각을 하고, 어떤 방향으로 고민을 해야 만들어질 수 있는지 훈련을 할려면 어떻게 해야할까요?? 결론적으로. 소스를 보면 과정들이 이해가 가는데.. checkWinner라는 함수를 생각해내는 것 까지는 어렵지는 않은데(복잡해지니까 기능단위로 따로 빼면 되니까요) checkWinner라는 함수 안에 forEach를 사용해서 문제를 하결하는 과정은 입문자 입장에서는 아무리 고민을 하고, 이해를 하려고 해도 쉽지가 않습니다.ㅠㅠ 이럴 경우에는 어떤식으로 진행을 하고, 고민을 하고 공부를 해야하는지 조언 부탁드립니다.ㅜㅠㅜ
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
8-6강 중 질문 있습니다!
안녕하세요 제로초님 !! 강의 너무 잘 듣고 있습니다. 감사합니다. 8-6강 반응속도 측정하기 셀프체크 부분에서 궁금증이 생겨서 글을 작성하게 됐습니다!! 제로초님께서 오름차순으로 뽑은 5개의 기록들을 result에 append()하신 걸 저는 html에 새로운 div태그(class win)를 만들어 js에서 변수 선언한 후 거기에 append()를 했습니다. result에서 append를 했을 때는 제로초님께서 설명하신대로 나왔지만, 새로 만든 div태그에 append를 하자 1등 : 447ms1등 : 382ms2등 : 447ms1등 : 382ms2등 : 399ms3등 : 447ms1등 : 382ms2등 : 399ms3등 : 404ms4등 : 447ms 이렇게 나왔습니다. result.append()에서 win.append()로 바꿨을 뿐, 다른 코드는 그대로입니다 혹시 이렇게 나오는 이유를 가르쳐주실 수 있으신가요??? ㅜㅜㅜㅜ
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
야구게임에서 궁금한점이 있습니다.
야구게임에서 무작위 숫자를 만들 때 Math.random()을 사용해서 0이상 1미만의 숫자를 생성하는 부분에서 Math.random() * 9 + 1 을 하는 이유가.. Math.random() * 10을 하면 나중에 반올림을 했을 때 0이 포함이 되기 때문에 0을 없애기 위해서 Math.random() * 9 + 1을 해 주는건가요? Math.random() * 10
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
body에 대한 질문입니다!
제로초님 안녕하세요!!항상 좋은 강의 감사합니다.body태그의 경우 html에서 지워고 const body = document.createElement('body');가 적용이 안되는데 이유가 궁금합니다!
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
제로초님 안녕하세요! 이차원배열 테이블 생성 질문입니다!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 항상 강의 잘 듣고 있습니다!혹시 제가 첨부한 코드대로 실행했을 때는 왜 원하는 결과가 나오지 않는지 알 수 있을까요?? const $table = document.createElement(`table`); const $tr = document.createElement("tr"); const $td = document.createElement(`td`); for (let i = 0; i < 3; i++) { $table.append($tr); $tr.append($td); $tr.append($td); $tr.append($td); } document.body.append($table);
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
lotto에서 함수화 부분에서요!!
제로초님!! 안녕하세요! 좋은 강의 항상 잘 듣고 있습니다. 다름이 아니라 저는 function에 setTimeout도 반복된다고 생각해서 같이 넣었는데 혹시 setTimeout을 함수에 넣었을 때 성능 저하나 다른 이유가 있어서 function만드실 때 따로 빼신 이유가 있을까요?? function view(component, index, time) { setTimeout(() => { const $ball = document.createElement("div"); $ball.setAttribute("class", "ball"); $ball.textContent = `${winBalls[index]}`; component.appendChild($ball); }, time); }
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
안녕하십니까 제로초님:)
안녕하십니까 제로초님 다름이아니라 제로초님 영상보면 예전에 JS 초급강좌 , JS 중급강좌가 따로 나뉘어져 있는대 1. 지금 개정판 let's Get it 자바스크립트는 중급강좌 내용까지 합쳐진 내용인가요 ? 2. 합쳐져 있거나 혹은 분리되어 있다면 어느 내용들이 빠져 있을까요? (포함된 내용이라도 모든 내용을 다 다루진 않으신거 같아서요!)
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
안녕하세요 제로초님
안녕하세요 제로초님 let's Get it 자바스크립트 책을 사서 공부하고 있습니다. 공부를 하다가 우연히 이전에 유튜브에서 제로초님이 말씀하셨던 "자바스크립트 필수개념" 유튜브 동영상을 봤었는데요.. 이 영상 입니다. https://www.youtube.com/watch?v=b4LxIniE9-M&t=190s 혹시 이 ES2021(Let's get it) 자바스크립트 강의에서도 해당 강의에 있는 내용들을 설명해주시나요? 이벤트 루프는 책보니까 설명해주시는것 같은데 다른 개념들도 설명해주시는지 궁금해서 여쭈어보려고 합니다. 아니면 다른 동영상 강의에서 설명 해주시는게 있나요?
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
합칠 수 있는 Cell이 있는데 게임 종료
만약 게임판이 아래와 같다면.. 원래 2048게임에서 움직일 수 있는 Cell이 있는데도 방향키를 잘못 누르면 게임이 종료되는게 맞는 건가요??? 아래 게임판에서는 방향키 위/아래 키를 누르면 게임 진행이 가능하지만 이 상태에서 좌/우 키를 누르면 바로 게임 종료가 되는 것 같아요. 제가 알기로는 움직일 수 있는 Cell이 있을 때 실수로 다른 방향키를 눌러도 게임은 종료되지 않는 것으로 알고 있는데 이렇게 게임을 만들려면 게임 종료 조건에서 움직일 수 있는 Cell이 있는 것을 확인하는 flag 변수 같은 것을 따로 두면 될까요? data = [ [2, 8, 16, 4], [4, 8, 4, 2], [16, 32, 64, 4], [128, 4, 2, 4], ];
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
블록, 함수 스코프, 클로저 문제 강의에서 질문입니다
for(var i=0; i<winBalls.length; i++){ (function(j) { setTimeout(() => { console.log(winBalls[j], j); drawBall(winBalls[j], $result); }, 1000 * ( i + 1)); })(i); } 강의 중에 즉시 실행함수로 해당 문법응ㄹ 보았는데요. function(j)라는 함수는 매개변수 i를 입력받기 때문에 1000 * (i + 1)은 1000 * (j + 1)이라고 써주는 것이 좀 더 일관성이 있는것은 아닌지 질문드립니다. 물론 i로 써도 실행에는 전혀 문제가 없지만, 이왕 function에서 매개변수를 j로 받은이상 j로 쓰는게 좋겠지요?
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
안녕하세요 쿵쿵따 조건문에서 질문있습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작ㅁ성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 마지막 쿵쿵따 단어제한갯수를 3으로 제한하는 코드가 newWord.length === 3 이라고 하셨는데 저는 input의 입력된 단어갯수랑 비교하면 될거같아서 const input = $input.value if( input.length === 3 && (!word || word[word.length -1] === newWord[0])) 이라고 생각해서 풀었습니다 코드실행은 제로초님이 쓰신코드랑 같게 실행되는거같은데 input으로 비교해도 되나요?
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
열리지 않은 칸을 엄청 빨리 클릭해서 열 때 Uncaught TypeError
제가 혹시 실수한 것이 있나 싶어서 제로초님 깃허브에 올라와 있는 코드도 그대로 복붙해서 실행해봤는데 마찬가지로 빈 칸을 빠르게 클릭할 때 이런 에러가 발생합니다. ``` Uncaught TypeError: Cannot read property 'undefined' of undefined at HTMLTableSectionElement.onLeftClick ``` 이런 버그는 어떻게 해결 하면 좋을까요? 다시 확인해보니, 이미 열린 칸 위에서도 빠르게 클릭하면 같은 에러가 발생하는데, 에러 원인이 뭔지 파악하기가 어렵습니다. 에러 발생 코드 위치는 여기에요. const cellData = data[rowIndex][cellIndex];
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
비동기 구현 질문
안녕하세요, 제로초(조현영)님 노드 교과서 강의 잘듣고 있는 수강생입니다. 노드 교과서를 들으면서 부족하거나 헷갈리는 개념은 새로 리뉴얼 하신 레츠기릿 자바스크립트에서 해당부분만 찾아 들으려고 하는데요. 목차를 보니 비동기(Promise,async-await)은 안보여서 그런데 혹시 해당 개념 관련 강의는 어느 부분을 들으면 될까요?? 항상 감사합니다.
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
안녕하세요 제로초님 학습에관한 간단한 상담부탁드립니다.
안녕하세요 제로초님..! 부트캠프에 이제막 수료한 비전공자입니다. 다름아니라 제가 프로그래밍적인 사고능력이 부족하여 이 점을 보완하고자 제로초님 강의를 들으려고하는데, 기본적인 자바스크립트 문법은 알고있다고 생각은 합니다.. 그래서 어디서부터 사고능력을 기르기위해 강의를 들어야할지 모르겠어요.. 어디서 부터 듣는것이좋을까요? 아니면 제가 느낄때 이점에대해 약하다 싶은부분만 골라서 들어야하는것일까요 ?
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
10강 질문드립니다!
onBattleMenuInput 메소드에서 const { hero, monster } = this; 으로 구조분해 하였는데 hero.getXp(monster.xp) 부분은 this없이 사용이 가능한데 this.monster = null 부분은 왜 this 빼면 오류가 발생하나요?
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
4장 함수부분 질문입니다.
안녕하세요! 항상 강의 잘 듣고 있습니다. 4장 계산기에서 const OnClickNumber = function(){ ~~ 이 부분 } 저 부분에서 return을 함수처럼 해야 된다고 하셨는데.. 3장에서는 그냥 console.log(word) 이런식으로 출력문만 찍고 return이 없었는데 아무 이상 없었잖아요..왜 갑자기 return을 함수로 해야한다는게 이해가 안갑니다!
- 미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
반환값 질문
안녕하세요. 올려주신 강의 감사하게 잘 보고 있습니다. 0:40 값을 대입하지 않은 변수를 입력하면 undefined가 출력됩니다. 이 부분이 약간 찝찝한 부분이 있어서 질문드립니다. > let a; // 값을 대입하지 않은 변수를 선언 < undefined // 반환값은 undefined > a; // 값을 대입하지 않은 변수를 '호출' < undefined // 반환값은 undefined > let b = 10; // 값을 대입한 변수를 선언 < undefined // 값을 대입한 변수를 선언했는데 역시나 반환값은 undefined > b; // 변수 b 호출 < 10 // 여기서는 undefined가 아닌 10을 반환 값을 대입한 변수를 '입력'해도 선언의 경우는 undefined가 반환되어서 이런 의문이 생겼습니다. 값을 대입한 변수를 '호출' 하면 대입된 값이 잘 반환되구요. 그래서 제 생각은 '값을 대입해도, 대입하지 않아도 변수를 선언할 때는 항상 반환값이 undefined이고, 대입된 값이 없는 경우 해당 변수를 호출하면 undefined를 반환, 대입된 값이 있는 경우 해당 변수를 호출하면 대입된 값을 반환한다.' 이렇게 생각을 정리했는데 이게 맞을까요? 항상 감사합니다!