[JS] 모던자바스크립트 Deep Dive - 데이터 타입
2022. 4. 6. 19:39
🔥 Front-End/JavaScript
6장 데이터 타입(Data Type) ES6부터는 7개의 데이터 타입을 제공한다. 7개의 데이터 타입은 원시 타입(Primitive Type)과 객체 타입(Object/Reference Type)으로 분류할 수 있다. 숫자 타입(Number Type) C언어나 Java의 경우 정수와 실수를 구분하여 int, long, float, double 등과 같은 다양한 숫자 타입을 제공한다. Javascript는 독특하게 하나의 숫자 타입만 존재한다. Javascript는 모든 수를 실수로 처리하며, 정수만 표현하기 위한 데이터 타입이 별도로 존재하지 않는다. 숫자 타입은 추가적으로 세 가지 특별한 값도 표현할 수 있다. Infinity: 양의 무한대 -Infinity: 음의 무한대 NaN: 산술 연산 불가(No..
[JS] 6. 함수 스코프 & 블록 스코프 & 렉시컬 스코프
2022. 4. 6. 00:41
🔥 Front-End/JavaScript
GitHub - yjs03057/33-js-concepts: 모든 자바스크립트 개발자가 알아야 하는 33가지 개념 모든 자바스크립트 개발자가 알아야 하는 33가지 개념. Contribute to yjs03057/33-js-concepts development by creating an account on GitHub. github.com 스코프(유효 범위, Scope) 스코프란, 모든 식별자(변수 이름, 함수 이름, 클래스 이름 등)는 자신이 선언된 위치에 의해 다른 코드가 식별자 자신을 참조할 수 있는 유효 범위가 결정됩니다. 즉, 스코프는 식별자가 유효한 범위를 뜻합니다. MDN에 따르면 스코프란 현재 실행되는 컨텍스트를 말합니다. 여기서 컨텍스트는 값과 표현식이 "표현"되거나 참조될 수 있음을 의미..
[OS] 스케줄링 알고리즘
2022. 4. 4. 22:06
🖥 CS/OS
스케줄링 알고리즘(Scheduling Algorithm) 스케줄링 성능 평가 기준 일반적으로 스케줄링 알고리즘의 성능을 평가하는 데 평균 대기시간과 평균 반환시간이 이용됨 평균 대기시간(Average Waiting Time) : 각 프로세스가 수행이 완료될 때까지 준비 큐에서 기다리는 시간의 합의 평균값 평균 반환시간(Average Turnaround Time) : 각 프로세스가 생성된 시점부터 수행이 완료된 시점까지의 소요 시간의 평균값 A는 0의 시간에 준비 큐에 삽입. 2의 시간에 큐에서 나와 CPU에 할당되었기에 A의 대기시간은 (할당된 시간 2 - 큐 삽입 시간 0 = 2). A의 프로세스 실행이 끝난 시간은 5. A의 반환시간은 (실행 끝난 시간 5 - 큐 삽입 시간 0 = 5) B는 1의 시..
[OS] 프로세스 개요
2022. 4. 3. 00:16
🖥 CS/OS
프로세스 개요 프로세스(Process) 프로세스(Process)란? 실행 중인 프로그램 프로그램: 동작을 하지 않는 정적, 수동적 개체 프로세스: 동작을 하는 능동적 개체 운영체제로부터 자원을 할당받아 동작 자원: CPU, 메모리, 입출력 장치, 파일 등 동작: CPU가 프로세스의 명령을 실행 프로세스(Process)와 운영체제(Operating System) 프로세스 관리자의 역할 프로세스를 생성 및 삭제 프로세스 실행(CPU 할당)을 위한 스케줄 결정 프로세스의 상태를 관리하며 상태 전이를 처리 프로세스의 상태 상태 모델 생성: 처음 작업이 시스템에 주어진 상태 준비: 실행 준비가 되어 CPU 할당을 기다리는 상태 실행: 프로세스가 처리되는 상태 종료: 모든 처리가 완료되어 사용자에게 반환되는 상태 ..
[OS] 운영체제 개요
2022. 4. 2. 23:53
🖥 CS/OS
운영체제의 개요 컴퓨터의 하드웨어 자원을 관리하고 컴퓨터 프로그램이 동작하기 위한 서비스를 제공하는 시스템 소프트웨어 컴퓨터 시스템의 운영 컴퓨터 시스템의 자원을 제어 및 관리 응용프로그램들의 실행을 도와주는 소프트웨어 사용자 지원 사용자의 명령을 해석하여 실행 사용자와 하드웨어 사이의 매개체 역할 수행 CPU의 동작 모드 슈퍼바이저 모드(커널 모드) 운영체제의 커널이 동작되는 모드 하드웨어를 직접 제어할 수 있는 CPU 명령어 사용 가능 보호 모드 (사용자 모드) 응용 프로그램이 동작되는 모드 하드웨어를 직접 제어할 수 있는 CPU 명령어 사용 불가능 시스템 호출 -> 보호 모드에서 슈퍼바이저 모드로 변경 -> 커널 동작 -> 하드웨어 제어 커널(Kernel) 운영체제의 핵심 요소 응용프로그램과 하드웨..
[JS] 4. 암시적 형변환, 명시적 형변환, Nominal, 구조화, 덕 타이핑
2022. 3. 31. 20:54
🔥 Front-End/JavaScript
GitHub - yjs03057/33-js-concepts: 모든 자바스크립트 개발자가 알아야 하는 33가지 개념 모든 자바스크립트 개발자가 알아야 하는 33가지 개념. Contribute to yjs03057/33-js-concepts development by creating an account on GitHub. github.com 암시적 형변환(Implicit Coercion) Javascript의 암시적 형변환은 정해지지 않은 값 유형을 예상되는 유형으로 강제 변환하려는 Javascript의 성질입니다. 이로 인해 사용자는 숫자 값을 넘겨야 하는 곳에 문자열을 넣을 수도 있고, 문자열을 넣어야 하는 곳에 객체를 넘기는 실수를 할 수도 있습니다. 이는 Javascript의 주요 기능이지만, 가장 ..
[JS] 5. == & === & typeof
2022. 3. 22. 22:55
🔥 Front-End/JavaScript
GitHub - yjs03057/33-js-concepts: 모든 자바스크립트 개발자가 알아야 하는 33가지 개념 모든 자바스크립트 개발자가 알아야 하는 33가지 개념. Contribute to yjs03057/33-js-concepts development by creating an account on GitHub. github.com ==(Equal Operator, 이중 등호, 동등 연산자) Javascript에서 동등 연산자를 사용할 때는 두 변수의 값만 체크합니다. 값만 같다면 true가 반환됩니다. var a = 3; var b = '3'; let c = 3; a == b; // true a == c; // true b == c; // true ✔ 0값은 false와 동일하므로 -> true ..
[JS] 3. 값 타입(Value Type) & 참조 타입(Reference Type)
2022. 3. 22. 22:51
🔥 Front-End/JavaScript
GitHub - yjs03057/33-js-concepts: 모든 자바스크립트 개발자가 알아야 하는 33가지 개념 모든 자바스크립트 개발자가 알아야 하는 33가지 개념. Contribute to yjs03057/33-js-concepts development by creating an account on GitHub. github.com Javascript의 변수 타입 Javascript의 변수 타입에는 크게 Primitive type(원시 타입)과 Reference Type(참조 타입)으로 나누어져 있습니다. 원시 타입(Primitive type)의 변수들은 데이터 복사가 일어날 때 메모리 공간을 새로 확보하여 독립적인 값을 저장하며, 참조 타입(Reference Type)은 메모리에 직접 접근이 아닌..