누가봐도 인생 1회차의 기록장

전체 글 77

인사이드 자바스크립트 #07 (함수 객체, 함수의 다양한 형태)

함수 객체 자바스크립트에서는 함수도 객체다 함수의 기본 기능인 코드 실행뿐만 아니라, 함수 자체가 일반 객체처럼 프로퍼티들을 가질 수 있다는 것이다. 자바스크립트에서 함수는 값으로 취급된다 자바스크립트에서는 함수도 일반 객체처럼 취급될 수 있다. 때문에 자바스크립트 함수는 다음과 같은 동작이 가능하다. 리터럴에 의해 생성 변수나 배열의 요소, 객체의 프로퍼티 등에 할당 가능 함수의 인자로 전달 가능 함수의 리턴값으로 리턴 가능 동적으로 프로퍼티를 생성 및 할당 가능 이와 같은 특징이 있으므로 자바스크립에서는 함수를 일급First Class 객체라고 부른다. 자바스크립트 함수의 기능은 입력한 값을 받아 처리한 다음 그 결과를 반환하는 구조다. 하지만 이러한 기본적인 기능 외에도 함수가 일급 객체이며 이는 ..

인사이드 자바스크립트 #06 (함수정의)

자바스크립트에서의 함수를 생성하는 방법은 3가지가 있다 함수 선언문 function statement 함수 표현식 function expression Function() 생성자 함수 함수 리터럴 자바스크립트에서는 함수도 일반 객체처럼 값으로 취급된다. 때문에 객체 리터럴 방식으로 일반 객체를 생성할 수 있는 것처럼 자바스크립트에서는 함수 리터럴을 이용해 함수를 생성할 수 있다. 함수 리터럴은 크게 네 부분으로 구성된다. function add (x, y) { return x + y; } ① function 키워드 : 자바스크립트 함수 리터럴은 function 키워드로 시작한다. ② 함수명 : 함수명은 함수 몸체 내부코드에서 자신을 재귀적으로 호출하거나 자바스크립트 디버거가 해당함수를 구분하는 식별자로 사..

인사이드 자바스크립트 #05 (연산자)

연산자 + 연산자 더하기 연산과 문자열 연결 연산을 수행한다. typeof 연산자 피연산자의 타입을 문자열 형태로 리턴한다. 여기서 null과 배열이 'object'라는 점, 함수는 'function' 이라는 점에 유의해야 한다. 숫자 'number' 문자열 'string' 불린값 'boolean' null 'object' undefined 'undefined' 객체 'object' 배열 'object' 함수 'function' == (동등) 연산자와 ===(일치)연산자 자바스크립트에서는 두 값이 동일한지를 확인하는 데 두 연산자를 모두 사용할 수 있다. == 연산자는 비교하려는 피연산자의 타입이 다를 경우에 타입 변환을 거친 다음에 비교한다. === 연산자는 피연산자의 타입이 다를 경우에 타입을 변경하..

인사이드 자바스크립트 #04 (배열)

배열 자바스크립트 객체의 특별한 형태. 배열 리터럴 자바스크립트에서 새로운 배열을 만드는 데 사용하는 표기법이다. 대괄호 ([ ]) 를 사용한다. 객체 리터럴과 달리 각 요소의 값만을 포함한다. 대괄호 내에 접근하고자 하는 원소의 배열 내 위치 인덱스값을 넣어서 접근한다. ※ 배열 내의 첫번째 원소는 인덱스 0 부터 시작한다. 배열의 요소 생성 객체와 같이 배열의 원소도 동적으로 추가할 수 있다. 특히, 자바스크립트 배열의 경우는 값을 순차적으로 넣을 필요 없이 아무 인덱스 위치에나 값을 동적으로 추가할 수 있다. 배열의 요소는 숫자나 문자열 같은 기본 타입의 값들을 포함해서 객체나 함수, 배열 등과 같이 자바스크립트의 모든 데이터 타입을 포함할 수 있다. 자바스크립트는 배열의 크기를 현재 배열의 인덱스..

인사이드 자바스크립트 #03 (객체, 프로토타입)

자바스크립트 참조 타입(객체 타입) 자바스크립트에서 숫자, 문자열, 불린값, null, undefined 같은 기본 타입을 제외한 모든 값은 객체다. 따라서 배열, 함수, 정규표현식 등도 모두 결국 자바스크립트 객체로 표현된다. 자바스크립트에서 객체는 단순히 '이름(key):값(value)' 형태의 프로퍼티들을 저장하는 컨테이너로서, 컴퓨터 과학 분야에서 해시Hash라는 자료구조와 상당히 유사하다. 기본타입은 하나의 값만을 가지는데 비해, 참조 타입인 객체는 여러개의 프로퍼티들을 포함할 수 있으며, 이러한 객체의 프로퍼티는 기본 타입의 값을 포함하거나 다른 객체를 가리킬 수 도 있다. 이러한 프로퍼티의 성질에 따라 객체의 프로퍼티는 함수로 포함할 수 있으며, 자바스크립트에서는 이러한 프로퍼티를 메서드라고..