JavaScript

10. 객체란? 객체는 변경이 가능한 값이며, 객체 타입은 다양한 타입의 값(원시 값 또는 다른 객체)을 하나의 단위로 구성한 복합적인 자료구조다. 원시값은 변경이 불가능한 값이며, 원시 타입은 단 한개의 값만 나타낸다. 객체는 0개 이상의 프로퍼티로 구성된 집합이며, 프로퍼티는 키(key)와 값(value)로 구성된다. Javascript에서 사용할 수 있는 모든 값은 프로퍼티의 값이 될 수 있다. 이 말은 자바스크립트의 함수도 값이 될 수 있다는 말이다. 함수가 프로퍼티 값으로 사용된다면 이는 메서드라 부른다. 자바스크립트의 함수는 다른 객체들에 일반적으로 적용 가능한 연산을 모두 지원하는 일급 객체이므로 값으로 취급할 수 있다. 객체는 프로퍼티와 메서드로 구성된 집합체다. 프로퍼티 : 객체의 상태를..
9.1 타입 변환이란? 타입 변환이란 기존 원시 값을 사용해 다른 타입의 새로운 원시 값을 생성하는 것이다. 이 타입 변환은 2가지가 있다. 개발자가 의도적으로 타입을 변환하는 명시적 타입 변환(타입 캐스팅)과 의도와 상관없이 표현식 평가중 암묵적으로 타입이 자동 변환되는 암묵적 타입 변환(타입 강제 변환)이 있다. 9.2 암묵적 타입 변환 9.2.1 문자열 타입으로 변환 연결 연산자 + 를 이용해 피연산자 중 하나 이상이 문자열이 있다면 문자열 연결 연산자로 동작한다. // 숫자 타입 0 + '' // "0" -0 + '' // "0" 1 + '' // "1" -1 + '' // "1" NaN + '' // "NaN" Infinity + '' // "Infinity" -Infinity + '' // "..
제어문은 조건에 따라 코드 블록을 실행하거나 반복 실행할 때 사용한다. 제어문을 이용하면 코드의 실행 흐름을 인위적으로 제어할 수 있지만, 실행 순서를 변경하는 것은 직관적인 코드의 흐름을 혼란스럽게 한다. 8.1 블록문 블록문은 0개 이상의 문을 중괄호로 묶은 것으로, 코드 블록 또는 블록이라고 부른다. 블록문을 하나의 실행 단위로 취급한다. 블록문은 언제나 문의 종료를 의미하는 자체 종결성을 갖기에 블록문 끝에 세미콜론을 붙이지 않는다. // 블록문 { var foo = 10; } // 제어문 var x = 1; if(x < 10) { x++; } // 함수 선언문 function sum (a, b) { return a + b; } 8.2 조건문 조건문은 주어진 조건식의 평가 결과에 따라 코드 블록의..
연산자는 피 연산자를 대상으로 산술, 할당, 논리, 타이브 지수 연산 등을 수행해 하나의 값을 만든다. 피연산자는 값으로 평가될 수 있는 표현식 이어야 한다. 7.1 산술 연산자 산술 연산자는 피연산자를 대상으로 수학적 계산을 수행해 새로운 숫자 값을 만든다. 산술 연산이 불가능하면 NaN을 반환한다. 산술 연산자는 피연산자의 개수에 따라 이항 산술 연산자와 단항 산술 연산자로 구분할 수 있다. 7.1.1 이항 산술 연산자 이항 산술 연산자는 2개의 피연산자를 산술 연산하여 숫자 값을 만든다. 5 + 2; // 7 5 - 2; // 3 5 * 2; // 10 5 / 2; // 2.5 5 % 2; // 1 7.1.2 단항 산술 연산자 단항 산술 연산자는 1개의 피연산자를 산술 연산하여 숫자 값을 만든다. ..
데이터 타입(이하 타입)은 값의 종류이다. ES11에서 새로운 원시값인 BigInt가 추가되었다. BigInt는 숫자 값이 나타내는 최대치인 2^53 - 1 보다 큰 정수를 표현할 수 있는 정수이다. 6.1 숫자 타입 int, long, float, double등과 같이 다양한 숫자 타입을 제공하는 C나 자바와는 달리 자바스크립트는 하나의 숫자타입만 가지며 숫자 타입의 값은 64비트 부동소수점 형식을 따른다. 즉, 모든 수는 실수로 처리하며 별도의 데이터 타입이 없다. 또한 모든 진수는 10진수로 해석된다. 10진수로 해석하기 이전에 모든 값은 저장될 때 2진 바이너리로 저장된다. // 모든 숫자 타입이다. var integer = 10; // 정수 var double = 10.12; // 실수 var ..
5.1 값 값은 식(표현식)이 평가되어 생성된 결과를 말한다. 평가란 식을 해성해서 값을 생성하거나 참조하는 것 // 10 + 20 은 평가되어 숫자 값 30을 생성한다. 10 + 20 // 30 모든 값은 데이터 타입을 가지며, 메모리에 2진수(비트)의 나열로 저장된다. 메모리에 저장된 값은 데이터 타입에 따라 다르게 해석될 수 있다. 변수는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름 이다. 변수에 할당되는 것은 값이다. // 변수에는 10 + 20 이 평가되어 생성된 숫자 값 30이 할당된다. var sum = 10 + 20; 10 + 20 은 할당 이전에 평가되어 값을 생성해야 한다. 5.2 리터럴 리터럴은 사람이 이해할 수 있는 문자 또는 ..
58청춘
'JavaScript' 카테고리의 글 목록 (7 Page)