JavaScript/basic(21)
-
4. 함수와 프로토타입 체이닝 #2 함수 객체 : 함수도 객체다
본 글은 인사이드 자바스크립트 도서의 내용을 복습하기 위해 작성된 글입니다. 4.2 함수 객체 : 함수도 객체다 4.2.1 자바스크립트에서는 함수도 객체다 자바스크립트에서는 함수도 객체다. 즉, 함수의 기본 기능인 코드 실행뿐만 아니라, 함수 자체가 일반 객체처럼 프로퍼티들을 가질 수 있다는 것이다. add() 함수도 객체처럼 프로퍼티를 가질 수 있다. // add() 함수도 객체처럼 프로퍼티를 가질 수 있다. // 함수 선언 방식으로 add() 함수 정의 function add(x,y){ return x+y; } // add() 함수 객체에 result, status 프로퍼티 추가 add.result = add(2,3); add.status = "OK"; console.log(add.result); /..
2021.07.22 -
4. 함수와 프로토타입 체이닝 #1 함수 정의
본 글은 인사이드 자바스크립트 도서의 내용을 복습하기 위해 작성된 글입니다. 4.1 함수 정의 함수 생성 방법 함수 선언문(function statement) 함수 표현식(function expression) Function() 생성자 함수 4.1.1 함수 리터럴 자바스크립트에서는 함수도 일반 객체처럼 값으로 취급한다. 따라서 객체 리터럴 방식처럼 자바스크립트에서는 함수 티러럴을 이용해 함수를 생성할 수 있다. 함수 리터럴을 통한 add() 함수 정의 function add(x,y){ return x+y; } function 키워드 : 자바스크립트 함수 리터럴은 function 키워드로 시작 함수명 : 함수의 이름, 함수명은 선택 사항이다. 함수명이 없는 함수를 익명 함수라 한다. 매개변수 리스트 : 함..
2021.07.22 -
3. 자바스크립트 데이터 타입과 연산자 #7 연산자
본 글은 인사이드 자바스크립트 도서의 내용을 복습하기 위해서 작성된 글입니다. 3.7 연산자 자바스크립트 연산자의 대부분은 다른 언어와 유사하다. 자바스크립트에서 주의해야 할 연산자는 대표적으로 아래와 같다. + 연산자 typeof 연산자 ==(동등) 연산자, ===(일치) 연산자 !! 연산자 3.7.1 + 연산자 + 연산자는 더하기 연산과 문자열 연결 연산을 수행한다. 아래 예제와 같이 두 연산자가 모두 숫자일 경우에만 더하기 연산이 수행되고 나머지는 문자열 연결 연산이 이루어진다. let add1 = 1+2; let add2 = "my" + "string"; let add3 = 1 + "string"; let add4 = "string" + 2; console.log(add1); // 3 consol..
2021.07.21 -
3. 자바스크립트 데이터 타입과 연산자 #6 기본 타입과 표준 메서드
본 글은 인사이드 자바스크립트 도서의 내용을 복습하기 위해 작성된 글입니다. 3.6 기본 타입과 표준 메서드 자바스크립트는 숫자, 문자열, 불린값에 대해 각 타입별로 호출 가능한 표준 메서드를 정의하고 있다. 하지만 기본 타입의 경우는 객체가 아닌데 어떻게 메서드를 호출할 수 있을까? 다음 예제와 같이 기본 타입의 값들에 대해서 객체 형태로 메서드를 호출할 경우, 이들 기본값은 메서드 처리 순간에 개게로 변환된 다음 각 타입별 표준 메서드(다음 예제의 경우 toExponential()이나 chatAt())를 호출하게 되는 것이다. 그리고 메서드 호출이 끝나면서 다시 기본값으로 복귀하게 된다. 기본 타입 변수에서의 메서드 호출 // 숫자 메소드 호출 let num = 0.5; console.log(num...
2021.07.21 -
3. 자바스크립트 데이터 타입과 연산자 #5 배열
본 글은 인사이드 자바스크립트 도서의 내용을 복습하기 위해 작성된 글입니다. 3.5 배열 자바스크립트 배열의 특징 크기를 지정하지 않아도 된다. 각각의 요소의 타입을 동일하게 하지 않아도 된다. 3.5.1 배열 리터럴 배열 리터럴이란? 배열 리터럴은 자바스크립에서 새로운 배열을 만드는 데 사용하는 표기법이다. 겍체 리터럴이 중괄호( { } )를 이용한 표기법이었다면, 배열 리터럴은 대괄호( [] )를 사용한다. 배열 리터럴을 통한 배열 생성 // 배열 리터럴을 통한 5개 원소를 가진 배열 생성 let colorArr = ["orange", 'yellow', 'blue', 'green', 'red']; console.log(colorArr[0]); // orange console.log(colorArr[1..
2021.07.21 -
3. 자바스크립트 데이터 타입과 연산자 #4 프로토타입
본 글은 인사이드 자바스크립 도서의 내용을 복습하기 위하여 작성된 글입니다. 3.4 프로토타입 자바스크립트의 모든 객체는 자신의 부모 역할을 하는 객체와 연결되어 있다. 그리고 이것은 마치 객체지향의 상속 개념과 같이 부모 객체의 프로퍼티를 마치 자신의 것처럼 쓸 수 있는 것 같은 특징이 있다. 자바스크립트에서는 이러한 부모 객체를 프로토타입 객체(짧게는 프로토타입)라고 부른다. 객체 생성 및 출력 let foo = { name : "foo", age : 30 }; // 에러가 발생하지 않고 예제가 실행될수 있는 이유는 // foo 객체의 프로토타입에 toString() 메서드가 이미 정의 // 되어 있고 foo 객체가 상속처럼 toString() 메서드를 호출했기 때문이다. console.log(foo..
2021.07.21