자바 스크립트

    [코어 자바스크립트 스터디] 7주차. 클래스

    자바스크립트의 클래스 자바스크립트는 프로토타입 기반 언어이므로 클래스의 개념이 존재하지 않지만(ES5까지) , 하지만, 프로토타입을 클래스 관점에서 접근해보면 비슷하게 해석할 수 있어요. 즉, 프로토타입을 기반으로 클래스와 비슷하게 동작하게끔 하는 다양한 기법들이 도입돼 왔습니다. 그러다가, ES6 부터는 클래스가 도입되었습니다. 프로토타입 체이닝과 관련한 문제 console.log 의 출력값을 예측해봅시다. var Grade = function () { var args = Array.prototype.slice.cail(arguments); for (var i = 0; i < args.length; i++) { this[i] = args[i]; } this.length = args.length; }; ..

    [코어 자바스크립트 스터디] 6주차. 프로토타입

    프로토타입의 정의 var instance = new Constructor(); prototype은 객체이며, prototype을 참조하는 __proto__ 도 객체이다. prototype 이라는 프로퍼티와 __proto__ 라는 프로퍼티와의 관계가 프로토타입의 핵심 개념이다. 생성자함수의 prototype에 어떤 메서드나 프로퍼티가 있다면, 인스턴스에서도 마치 자신의 것처럼 해당 메서드나 프로퍼티에 접근할 수 있게 된다. "new 연산자로 constructor를 호출하면 instance가 만들어지는데, 이 instance 의 생략 가능한 프로퍼티인 __proto__ 는 Constructor의 prototype을 참조한다" __proto__ 의 경우, 생략 가능하며 실무에서는 잘 사용하지 않는다. 대신 O..

    [코어 자바스크립트 스터디] 5주차. 클로저

    클로저의 정의 클로저란 어떤 함수 A에서 선언한 변수 a 를 참조하는 내부함수 B를 외부로 전달할 경우 A의 실행 컨텍스트가 종료된 이후에도 변수 a가 사라지지 않는 현상을 말합니다. var outer = function () { var a = 1; var inner = function () { return ++a; } return inner; }; var outer2 = outer(); console.log(outer2()); // 2 console.log(outer2()); // 3 outer2 변수는 outer 의 실행 결과인 innr 함수를 참조하게 될 것입니다. 이후 9번째에서 outer2 를 호출하면 앞서 반환된 함수인 inner가 실행되겠죠. inner 함수의 실행 시점에는 outer 함수는..

    [코어 자바스크립트 스터디] 1주차. 데이터 타입

    자바스크립트에 대해 좀 더 알아보고자, 스터디에 참여하게 되었다. 오늘은 첫 시간! 시간을 정해놓고 40분간 독서를 하고, 30분간 정리된 내용에 대해 이야기하면서 이해를 더 잘 할 수 있었다. 특히, 삼색볼펜법이 스터디를 할 때 활용하면 괜찮은 방법이라는 생각이 든다. 앞으로 남은 주차도 기대가 된다. 올해가 가기전에 자바스크립트를 확실히 알고 넘어가야겠다. 데이터 타입의 종류 1. 기본형 - 숫자, 문자열, 불리언, null, undefined , Symbol 2. 참조형 - 객체, 배열, 함수, 날짜, 정규표현식, Map, WeakMap, Set, WeakSet 기본형은 값이 담긴 주솟값을 바로 복제하는 반면, 참조형은 값이 담긴 주솟값들로 이루어진 묶음을 가리키는 주솟값을 복제한다는 점이 다르다...