본문 바로가기

반응형
SMALL

JS 함수

JavaScript 함수와 프로토타입 체이닝 (5) 드디어 JavaScript 함수 마지막 글입니다. 여기까지 읽으신 분이 있으신진 모르겠지만, 읽으셨다면 추후에 큰 도움 되실겁니다. 다 기억까지한다면 베스트 ! 프로토타입 체이닝 프로토타입의 두 가지 의미 JS는 기존 C++이나 자바 같은 객체지향 프로그래밍 언어와는 다른 프로토타입 기반의 객체지향 프로그래밍을 지원합니다. JS에서 OOP 상속에 근간이 되는 프로토타입과 프로토타입 체이닝의 기본 개념을 알아보도록 합시다. 자바와 같은 객체지향 프로그래밍에서는 클래스를 정의하고 이를 통해 객체를 생성합니다. JS에는 이러한 클래스 개념이 없습니다. 대신에 객체 리터럴이나 앞서 설명했던 생성자 함수로 객체를 생성합니다. 이렇게 생성된 객체의 부모 객체가 바로 '프로토타입' 객체입니다. 즉, 상속 개념과 마찬.. 더보기
JavaScript 함수와 프로토타입 체이닝 (4) 사실 이렇게 길어질 줄은 몰랐네요. 계속 함수만 해서 지루하실 수도 있으시겠지만, 지금 당장 React, Vue, JQuery를 공부하는 것보다 이 내용을 알아놓으시면 분명히 도움이 될 겁니다. 제가 약속할게요 ! 함수 호출과 this 1. arguments 객체 C와 달리 엄격한 언어가 아니기 때문에 JS는 함수 형식에 맞춰 인자를 넘기지 않아도 에러가 발생하지 않습니다. (이 것은 추후 큰 문제가 되는데...) function func(arg1, arg2) { console.log(arg1, arg2); } func(); // undefined undefined func(1); // 1 undefined func(1, 2); // 1 2 func(1, 2, 3); // 1 2 이렇게 런타임 시에 호출.. 더보기
JavaScript 함수와 프로토타입 체이닝 (2) 시간이 없어요 !! 바로 시작합시다. 함수 객체 : 함수도 객체다 자바스크립트에서는 함수도 객체다 자바스크립트에서는 함수도 객체입니다. 즉, 함수의 기본 기능인 코드 실행 뿐만 아니라, 함수 자체가 일반 객체처럼 프로퍼티들을 가질 수 있다는 것입니다. function add(x, y) { return x + y; } add.result = add(3, 2); add.status = 'OK'; console.log(add.result); // '5' console.log(add.status); // 'OK' 앞서 설명한 것처럼 자바스크립트는 일반 객체처럼 취급될 수 있단 점을 알고가야합니다. 리터럴에 의해 생성 변수나 배열의 요소, 객체의 프로퍼티 등에 할당 가능 함수의 인자로 전달 가능 함수의 리턴값으로.. 더보기

반응형
LIST