Javascript 핵심 개념 알아보기 - JS Flow

Javascript 핵심 개념 알아보기 - JS Flow

(101개의 수강평)

1468명의 수강생
고의성 고 프로필

감사드립니다! 고의성 고 10일 전

프로토타입에 대해 항상 명확히 이해 하지 못해 찜찜한 마음이 컷는데 오랜 시간 고민하시고 깨우치신 것을 가르쳐 주셔서 정말 감사드립니다! :)

1
조지헌 프로필

화살표 함수의 this 조지헌 12일 전

강의에는 없는 내용이지만

this 관련 궁금증이 생겨 질문남깁니다.

다음 강의에 있는 내용이라면 죄송합니다.

const a = {
        aa: function() {
          console.log(this);
        },
        bb: () => {
          console.log(this);
        }
이렇게 했을 때 화살표 함수는 왜 window를 가리키게 되는지 궁금합니다.

2
류시명 프로필

var와 const의 차이? 류시명 16일 전

const a = 10;
const obj = {
  a: 20,
  b() {
    console.log(this.a); // this === obj

    function c() {
      console.log(a); // 10
      console.log(this); // window
      console.log(this.a); // undefined
    }
    c();
  }
}

obj.b();

위 코드에서 function c() 내부의 console.log(this.a)가 undefined를 출력하는 이유가 뭘까요?

전역공간에서 a를 var로 선언하면 10이 나오는데, const로 선언하면 undefined가 나오네요.

어떤 원리인지 궁금합니다. 

+ 좋은 강의 정말 감사드립니다! 덕분에 JS를 보는 눈이 확 트인 것 같아요.

2
제로초빠돌이 프로필

헛갈리는데, 제로초빠돌이 20일 전

안녕하세요.

영상내용 + 삼각형 그림을 같이 봤을 때 조금 헛갈려서 질문드립니다.

객체를 인스턴스로 복사했을때,

prototype의 함수들(ex map(), foreach  등..)이 상속 되는건지, 상속이 아니라 사용할 수 있도록 '연결'되는건지 궁금합니다.

2
임준성 Lim 프로필

코어 자바스크립트 책과 비교 임준성 Lim 27일 전

안녕하세요. 코어 자바스크립트 책을 보다가 인터넷 강의까지 수강하게 되었는데요.

아직 인터넷 강의에서 "기본형과 참조형의 종류 및 차이점" 밖에 보지 못했는데, 책에서의 설명과 강의에서의 설명이 좀 다른 것 같아 혼란스럽네요.

예를 들어

1. 책에서는 데이터 영역에 데이터를 할당하기 전에 같은 값을 갖는 데이터가 메모리에 있는지 검색한 후에 값이 없으면 할당한다고 써있는데, 강의에서는 검색 과정없이 같은 값이라도 그냥 할당하는 것으로 설명하셨고,

2. 책에서는 변수만 선언한 경우(예를 들어 var a;) 데이터를 저장하기 위한 메모리 영역을 할당하지 않고 변수명을 저장하기 위한 메모리 공간만 할당하는 것처럼 써있는데, 강의에서는 데이터를 저장하기 위한 메모리 영역을 우선 할당하고, 변수명을 저장하기 위한 메모리 공간에 그 데이터 메모리 주소를 저장하는 식으로 설명해주셨습니다.

그 외에 참조형에 있어서도 책과 강의가 약간 다르게 설명되어 있는 것 같은데 이해하는데는 어느 쪽을 따라가도 상관없을 것 같지만, 어느게 더 실제 동작에 가까운 것인지 궁금합니다.

그리고 혹시 이 주제(변수 선언 및 데이터 할당시 메모리에서 일어나는 동작)와 관련해서 참고할만한 자료가 있다면 알려주셨으면 합니다.

감사합니다.

1
유영기 프로필

.forEach 에서 this 와 thisArg 의 .length가 다를 경우 유영기 1달 전

.forEach 에서 this 와 thisArg 의 .length가 다를 경우,
this.length에 의해 바운드 되겠네요.

2
김태진 프로필

질문이요 김태진 1달 전

9번에서는 inner 스코프만 스캔하고 undefined을 출력하는데, 왜 6번에서는 outer에 없으니 global까지 스캔해서 a값을 찾나요? 함수안의 함수는 스코프가 달라지나요? 그리구 var a=3;을 지우니까 오히려 inner함수의 콘솔도 1이 찍히던데 차이가 뭔가요?ㅠㅠ

3
ChangHyeon Bae 프로필

정재남 강사님? 선배님에게 질문하나 드려요! ChangHyeon Bae 1달 전

안녕하십니까?

오랜만에 강의 다시 한번 상기시키는 개념으로 보고있다가 궁금한점이 생겨서 질문 남겨요!

원시타입 같은 경우 변수를 생성하면

해당 실행컨텍스트내에 메모리가 할당이 되고

참조타입 같은 경우는 Heap 영역에 생성이 되는걸로 알고 있습니다.

그런데 궁금한점이

const 같은 키워드로 변수를 선언하면

이 변수는 더이상 값을 할당할수없어! 라고 되는데

이게 메모리에서 어떤식으로 락(?)이 걸려서 동작하는지 궁금합니다.

추가로 Object.freeze() 시, 해당 레퍼런스로 참조한 데이터를 변경하지 못하게 막아버리는데 이게 메모리에서 어떤식으로 동작을 하는지 궁금합니다!

2
블루윤 프로필

init() 을 쓰는 이유 질문드려요! 블루윤 2달 전

클로저 강의를 듣다보니 문득 궁금한것이 생겼는데요.

자바스크립트에서는 다른 언어들(c나 자바) 처럼 init 이라는 개념자체가 없다고 알고있습니다.

어느 패턴은 js 파일 맨 밑에

var test = document.getElementById("test");

// 함수부분은 생략.

function init() {
    testFunc();
    test.addEventListener("click", test2Func);
}
init();

위와 같이 init 함수를 임의로 만들어놓드라구요.

(제가 생각하기에는)

그 안에다 최초 실행되는 이벤트들을 

보기 좋게 모아둔 함수 인것 같은데요.

구글에 검색해보았을때는 키워드가 잘못된건지,

위 코드와 같은 패턴에 대한 정보를 찾지 못하겠습니다.ㅜ

대강... 조각들을 맞춰보면

변수들을 계속해서 유지? 사용하기 위한??

초기화...?? 를 위한 함수 라는데

그게 정확히 있고 없고에 차이를 모르겠습니다.

답변 주시면 감사하겠습니다!

강의 항상 잘보고있어요

3
Rhdqngkfkrh 프로필

1강 데이터 타입 Rhdqngkfkrh 2달 전

안녕하세요!

코어 자바스크립트 책를 구입해서 이 강의와 같이 듣고 있는 학생입니다!

그런데 1강에서 책과 다른 부분들이 많이 있는것 같이서 질문드립니다.

먼저 변수를 선언만 할때 책에서는 비어있는 공간을 확보해서 이름만 붙인다고 했는데

강의에서는 데이터 공간을 먼저 확보하고 변수공간과 연결한 후 이름을 붙인다고 하셨습니다.

제가 보기에는 둘이 좀 다른것같아서 질문드립니다.

사실 1강은 책과 강의가 거의 다 조금씩 다른것 같은데 이럴때는 책을 따라가면 되나요?

강의 내용을 바탕으로 책을 더 나중에 쓰셨다고 알고있어서 그렇습니다.

물론 큰 의미는 비슷하지만 정확히 똑같지는 않은 부분이 있어서 이부분을 질문드립니다.

4
블루윤 프로필

addEventListener 콜백함수의 인자 확인법?? 블루윤 2달 전

    <div class="ttt1"></div>

    <script>

        const test = document.querySelector(".ttt1");

        function testFunc(x, y, z) {

            console.log(this, x, y, z);

        }

        test.addEventListener("click", testFunc);  

    </script>

MDN 보니까 

콜백함수 내에서 this 가 무얼 가리키고,

정해져있는 인자가 무엇무엇인지 에 대한게 안보이더라구요.

(물론 강의에서 설명해주신것으로 이해는 했습니다.)

혹시 어디서 볼수있을까요?

1
conchocco 프로필

Person 객체를 생성할 때 this사용법 문의 conchocco 5달 전

function Person(name, age) {

this.name= name;

this.age = age;

}

 Employee객체도 이런식으로 생성이 되어있는데 이 부분에서 궁금한 점이 있습니다.

this는 함수안에서 사용될 때는 window 혹은 global 객체를 가리키는 거라고 하셨는데 그럼 위 코드에선 this를 사용하나 사용하지 않으나 같은 상황이 아닐까, 어떤게 다른건가 궁금합니다.

this를 사용해도 window 객체를 가리키고 this를 사용하지 않아도 전역변수인거니까 결국은 같은 거 아닌가요..?

제가 어떤 걸 잘못이해하고 있는건지 알려주시면 감사하겠습니다.

1
류명한 프로필

extendClass 함수 구현시 IIFE를 사용하는 것과 그냥 일반 함수를 사용하는 것의 차이가 무엇인지 궁금합니다. 류명한 6달 전

var extendClass1 = (function() {
  function Bridge() {}
  return function(Parent, Child) {
    Bridge.prototype = Parent.prototype;
    Child.prototype = new Bridge();
    Child.prototyep.constructor = Child;
  }
})();

var extendClass2 = function() {
  function Bridge() {}
  return function (Parent, Child) {
    Bridge.prototype = Parent.prototype;
    Child.prototype = new Bridge();
    Child.prototype.constructor = Child;
  }
}

var extendClass3 =function (Parent, Child) {
  function Bridge(){};
  Bridge.prototype = Parent.prototype;
  Child.prototype = new Bridge();
  Child.prototype.constructor = Child;
}

위의 extendClass1, 2, 3의 차이가 무엇인지 궁금합니다. 

2
Dandyism 프로필

안녕하세요 혹시 ppt 자료는 어디서 받을 수 있나요? Dandyism 6달 전

안녕하세요 혹시 ppt 자료는 어디서 받을 수 있나요?

ppt를 프린트해서 정리해서 보고자 합니다.

1
류명한 프로필

혹시 곧 출간되는 책이랑은 뭐가 다른가요? 류명한 7달 전

안녕하세요. 

개발자님이 곧 책을 출판하시는 걸 알게 되었는데요. 곧 출간하실 책이랑 강의랑 목차가 같던데, 혹시 강의랑 책은 어떻게 다른가요? 책이 더 자세한 편인가요? 그리고 인사이드 자바스크립트랑은 어떻게 다른지도 궁금합니다! 좋은 강의 감사합니다. 

4
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스