55,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결모던 자바스크립트(ES6+) 기본
강의 pdf 파일 공개 부탁드립니다
ES5 기본 강의에는 강의 자료가 pdf로 제공되어서 강의 전에 예습하기 좋았습니다. 혹시 ES6 기본 강의에는 강의자료 pdf가 제공되지 않나요?? 꼭 부탁드립니다. 강의 pdf를 읽고 듣는 것과 그렇지 않은 것의 차이가 커서 다시 한번 부탁드립니다.. ㅜㅠ
- 미해결모던 자바스크립트(ES6+) 기본
아 전역에 let을 선언해도 순서대로 읽는군요;;
지금까지 전역변수는 스코프안에 있는건 모두 사용되는줄 알앗네요 ㅠㅠ 알아갑니다..
- 해결됨모던 자바스크립트(ES6+) 기본
Symbol.species 질문입니다.
안녕하세요 강사님! 강의 너무 재밌게 잘 보고 있습니다. Symbol.species 강의를 듣다가 조금 이해가 안되는 부분이 있어서 문의 드립니다. class Sports extends Array { static get [Symbol.species]() { return Array; }} const one = new Sports(10,20,30); const two = one.slice(1,2); 여기서 one에는 class Sports의 인스턴스를 생성하여 one에 전달하는데 Array를 상속받아 slice를 사용할 수 있고, 이후 two에는 slice()의 결과값만 대입하는 것이 아닌, constructor가 없더라도 @@species가 동작되어 인스턴스를 반환하지만 static get [Symbol.species]를 작성하였기에, 오버라이딩되어 반환값을 Array Object로 생성한 인스턴스를 반환했다고 이해했습니다. 그래서 one의 경우 Array를 상속받은 class Sports로 생성하여 log(one instanseOf Array) // true log(one instanseOf Sports) // true 로 확인됩니다. Sports Class로 생성된 인스턴스 이며, Array Obeject의 prototype을 상속받았기 때문에 위 결과가 나온것으로 판단됩니다. 이후 two의 경우 log(two instanseOf Array) // true log(two instanseOf Sports)// false one은 생성된 인스턴스로 prototype이 없지만, slice()는 결과값만 전달하는 것이아닌 @@specise의 결과로 인스턴스를 생성하여 반환하는것인데, one 인스턴스에서 [Symbol.species]를 작성하였기 때문에 오버라이딩 되어 Array Object의 인스턴스로 생성된 값을 반환 받은것으로 이해했습니다. 그래서 two의 결과로 Array는 true, Sports는 false로 나온것이구요, 여기서 질문은 [Symbol.species]를 제외하여 오버라이딩 하지않은 class Sports extends Array {}; 로 변경하여 테스트한 경우 one instanseOf Array, one instanseOf Sports two instanseOf Array, two instanseOf Sports의 결과로 one, two 모두 true더군요, [Symbol.specise] 작성 시 : Array Object의 인스턴스를 생성하여 반환 [Symbol.specise] 미 작성 시 : 오버라이딩 하지않고 defalut로 @@species가 동작 (class Sports extends Array로 생성한 인스턴스 반환) 위의 설명이 맞다면 기존에 오버라이딩 코드를 작성한 코드에서 const one = new Sports(10, 20)으로 인스턴스를 생성할때는 Symbol.species가 동작되지 않는건가요? one.slice의 결과값을 담을 인스턴스를 생성할때에만 Symbol.species가 동작되는 것인가요? 위 글에서 질문외에 제가 이해한 부분 중 틀린부분이 있다면 번거러우시겠지만 설명 부탁드립니다ㅜ
- 미해결모던 자바스크립트(ES6+) 기본
글의 정리가 안되어있어 삭제했습니다.
강사님 말씀대로 디버깅을 여러번 해보고 하나하나 따져가면서 이해는 완료했습니다. 강의 여러번 돌려보겠습니당. 감사합니다.
- 모던 자바스크립트(ES6+) 기본
let과 var의 차이
삭제된 글입니다
- 미해결모던 자바스크립트(ES6+) 기본
DevTools > Sources 에서 Block을 볼 수 없어요!
안녕하세요 저도 강의에 나오는 것처럼 DevTools > Sources에서 prototype 등등 확인하고 싶은데요 비주얼 스튜디오에서 test.html이라는 파일을 작성하고 localhost:8080/test.html로 아래 캡쳐와 같이 파일을 불러오는 것은 성공했는데요, 크롬에서 F12를 눌러 Devtools를 켜고 Sources를 눌러봐도 강의에 보이는 것처럼 Block 등등이 보이는 창이 켜지지 않아요 어떻게 해야 될까요?
- 미해결모던 자바스크립트(ES6+) 기본
"블록 스코프 유형"강의 3:58분 내용의 switch-case 스코프에 대한 질문
강의 자료에 switch-case {} 블록 문 안에서 "case, default는 블록 스코프가 아님" 이라고 되어 있는데 이게 잘못 쓰여진 것 같아요..! 강의 안의 코드 예시를 보면 아래와 같은데요, switch 블록 안에 포함된 case 1와 case 2 아래에서 let을 사용하여 같은 이름의 변수를 여러번 선언할 수 없으니, 즉 case default도 switch 블록 스코프에 포함되는 것이 아닌가요? 헷갈리네요 [코드 예시] let item = 1; switch (item) { case 1: let sports; break; case 2: //let sports; => 같은 switch 블록 안에서 let을 사용하여 선언한 변수가 이미 있으므로 다시 let을 사용하여 같은 이름의 변수를 재선언하면 에러가 발생함 그러므로 case와 default는 자체적으로 다른 블록을 가지지 않고...switch 블록 안에 case와 default가 포함됨 (이게 맞나요?) default: log(sports); };
- 미해결모던 자바스크립트(ES6+) 기본
대괄호를 작성하지 않았을때의 결과값이 '1 2 3' 이나옵니다.
안녕하세요 강사님. 예제로 작성해주신 [코드1]를 작성해서 실행해보고 있는데, console.log(...obj); 형태로 대괄호를 작성하지 않고, 실행을 해보았는데 마지막 3 만 반환되는게 아닌 '1 2 3' 이 출력됩니다. 제가 잘못한 걸까요? const obj = {}; obj[Symbol.iterator] = function*(){ yield 1; yield 2; yield 3; }; console.log(...obj);
- 미해결모던 자바스크립트(ES6+) 기본
RegExp 인스턴스 생성시에는 u플래그를 사용안해도 적용이 되나요?
안녕하세요 강사님! u플래그에 대한 강의를 듣다고 예제코드를 해보는 와중에 u플래그를 사용하지 않으면 코드 포인트를 문자로 해석한다고해서 실행을 해보니 정상적으로 false를 반환을 합니다. 다만, 생성자 방식으로 const obj = new RegExp("\u{31}\u{32}") RegExp인스턴스를 생성하여 obj.test("12")를 진행하니 true가 반환됩니다. 생성자를 통한 정규표현식 검사에서는 u플래그가 없어도 코드 포인트를 문자로 매치하는게 아닌 유니코드의 코드 포인트로 변환후 매치하는게 맞나요?
- 해결됨모던 자바스크립트(ES6+) 기본
this, [[Scope]] 관련 질문 입니다.
안녕하세요. ES5를 공부하다보니 어느 새 ES6로 넘어왔습니다. 다름이 아니라 갑자기 문득 이해가 안되는 부분이 있어 질문을 하게 되었습니다. Function Book() {...} 이라는 함수가 있고 이걸 호출하면 Book이 속해있는 scope를 내부 property인 [[Scope]]에 참조하는 것으로 알고 있습니다. 그러면 여기서 ThisBindComponent도 같은 타이밍에 결정이 되는건가요? 즉, 아래처럼 new 연산자로 Book의 객체를 만들면 let obj = new Book(); [[Scope]]와 ThisBindComponent는 같은 곳을 가리키는 걸까요? 답변 주시면 감사하겠습니다.
- 미해결모던 자바스크립트(ES6+) 기본
다음 강의에 대한 질문입니다!!
선생님 강의를 듣고 많이 배우고 다음강의를 기다리고있습니다. 좋은 강의 만들어 주셔서 감사합니다. 혹시 다음 강의 일정을 알 수 있을가요?
- 미해결모던 자바스크립트(ES6+) 기본
강의 자료
강사님 혹시 수업 하신 내용 ppt 자료를 공유해 주실 수 있으실까요? 요점 정리가 잘 되어있어서 저장한 후 필기하여 더 복습하고 싶어서 요청 드립니다.
- 미해결모던 자바스크립트(ES6+) 기본
let 변수와 var 변수를 비교하는 예제 질문입니다.
{ let k = 0; node.children[k].onclick = function(event) { event.target.style.backgroundColor = "yellow"; console.log(k); } } { let k = 1; node.children[k].onclick = function(event) { event.target.style.backgroundColor = "yellow"; console.log(k); } } { let k = 2; node.children[k].onclick = function(event) { event.target.style.backgroundColor = "yellow"; console.log(k); } } 선생님 예제에서 for문에서 k 가 증가할때마다 k의 블록 스코프가 생성된다고 이해했습니다. 이해가 잘되지 않는 반복문은 풀어서 쓰면 이해가 잘됬어서 위의 코드처럼 반복문을 풀어썼는데 저렇게 이해하는게 맞는건가요? 블록으로 지정하지 않고 k를 선언하니까 var 로 선언했을 때와 같이 3으로 출력되서 let k 를 각각의 블록으로 묶었더니 예제와 같이 동작하지만 for문을 위와같은 형태로 풀어써본적이 없어서 질문드립니다!
- 미해결모던 자바스크립트(ES6+) 기본
다른파일에서 let변수를 가져오는방법이 이게 맞나요?
1번파일에서 let변수로 설정한걸 var변수안에 넣어서 2번파일에서 가져올 수 있는것을 확인했는데 해당 방법을 사용해도 문제가 없을까요? 더 좋은방법도 있나요?