JS 14

모던 자바스크립트 Deep Dive (10장 ~ 12장)

🔰객체 리터럴 객체란? 객체는 프로퍼티(객체의 상태를 나타내는 값)와 메서드(프로퍼티를 참조하고 조작하는 동작)로 구성된 집합체다. 객체지향 프로그래밍은 객체의 집합으로 프로그램을 표현하려는 프로그래밍 패러다임이다. 자바스크립트는 객체 기반의 프로그래밍 언어이며, 원시 값을 제외한 나머지 값은 모두 객체다. 객체 리터럴에 의한 객체 생성 객체 리터럴, Object 생성자 함수, 생성자 함수, Object.create 메서드, ES6 클래스의 다양한 객체 생성 방법을 지원한다. 객체 리터럴은 변수에 할당되는 시점에 자바스크립트 엔진이 해석해 객체를 생성한다. 자바스크립트의 유연함을 대표하는 객체 생성 방식이다. 객체 리터럴 외엔 모두 함수를 사용해 객체를 생성한다. 프로퍼티 객체는 프로퍼티의 집합이며, 프..

모던 자바스크립트 Deep Dive (7장 ~ 9장)

🔰연산자 연산자는 하나 이상의 표현식을 대상으로 산술, 할당, 비교, 논리, 타입, 지수 연산 등을 수행하여 하나의 값을 만든다. 연산의 대상자는 피연산자(operand)라 하며, 피연산자는 값으로 평가될 수 있는 표현식이다. 산술 연산자 피연산자를 대상으로 수학적 계산을 수행해 새로운 숫자 값을 만든다. 산술 연산이 불가능하면 NaN을 반환한다. +, -, *, /, %, ++, --, - 모든 이항 산술 연산자는 피연산자의 값을 변경하는 side effect가 없다. 이와 달리, ++, -- 연산자는 side effect가 있다. 할당 연산자 우항에 있는 피연산자의 평가 결과를 좌항에 있는 변수에 할당한다. 변수 값이 변하는 side effect가 있다. =, +=, -=, *=, /=, %=, **..

모던 자바스크립트 Deep Dive (4장 ~ 6장)

🔰변수 변수란 무엇인가? 왜 필요한가? 변수는 프로그래밍 언어에서 데이터를 관리하기 위한 핵심 개념이다. 메모리는 데이터를 저장할 수 있는 메모리 셀의 집합체로, 메모리 셀 하나의 크기는 1B이다. 컴퓨터는 메모리 셀 단위로 데이터를 write & read 한다. 각 셀은 고유의 메모리 주소를 갖는데, 이는 메모리 공간의 위치를 의미한다. 컴퓨터는 모든 데이터를 2진수로 처리하므로, 메모리에 저장되는 모든 데이터는 데이터 종류와 상관없이 모두 2진수로 저장된다. 프로그래밍 언어는 기억하고 싶은 값을 메모리에 저장하고 저장된 값을 읽어 들여 재사용하기 위해 변수를 제공한다. 메모리 주소로 개발자가 직접 접근하는 것은 운영체제가 관리하는 값을 변경하는 등의 치명적인 오류를 발생시킬 수 있으므로 허용하지 않는..

모던 자바스크립트 Deep Dive (1장 ~ 3장)

🔰프로그래밍 프로그래밍이란? 정확하고 상세하게 요구사항을 설명하는 작업이며, 코드가 결과물로 나온다. 🍎 특정 동작을 수행하는 프로그램(코드 집합체)을 만드는 행위 https://en.wikipedia.org/wiki/Computer_programming https://en.wikipedia.org/wiki/Computer_program 문제를 해결할 때 computational thinking(컴퓨팅 사고)가 필요하다. 프로그래밍 언어 명령을 수행하는 주체는 컴퓨터이므로, 컴퓨터가 이해할 수 있는 언어인 기계어로 명령을 전달해야 한다. 사람이 이해할 수 있는 syntax(약속된 구문, 문법)로 구성된 프로그래밍 언어를 사용해 프로그램을 작성한 후, 번역기(컴파일러 또는 인터프리터)를 사용하여 기계어로 ..

728x90