애플 실리콘 몽고디비 설치Homebrew 설치/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 몽고디비 설치brew tap mongodb/brewbrew install mongodb-communitybrew install mongosh몽고디비 실행brew services start mongodb-community 몽고디비 프롬프트 접속mongosh관리자 계정 추가use admindb.cerateUser({user:'이름', pwd:'비밀번호',roles:['root']})몽고디비 중지brew services stop mongodb-community몽고디비 설정 파일 수정vim /opt..
데이터 타입은 원시타입과 객체타입으로 구분합니다 원시 타입과 객체 타입을 크게 세가지 측면에서 다릅니다.원시 타입의 값은 병경 불가능한 값입니다. 이에 비해 객체 타입의 값은 변ㄱ 가능한 값입니다.원시 값을 변수에 할당하는 변수에는 실제 값이 저장됩니다. 이에비해값 변경 가능 여부: 원시 타입의 값은 변경 불가능한 값입니다. 이에 비해 객체 타입의 값은 변경 가능한 값입니다.변수에 저장되는 값: 원시 값을 변수에 할당하는 변수에는 실제 값이 저장됩니다. 이에 비해 객체를 변수에 할당하면 변수에는 참조 값이 저장됩니다.변수를 다른 변수에 할당할때의 방식: 원시 값을 갖는 변수를 다른 변수에 할당하면 원본의 원시 값이 복사되어 전달됩니다.(값에 의한 전달) 이에 비해 객체를 가리키는 변수에 할당하면 원본의 ..
객체란?객체는 변경 가능한 값이다. 객체는 0개 이상의 프로퍼티로 구성된 집합이며, 프로퍼티는 키와 값으로 구성됩니다. 객체는 프로퍼티의 집합입니다.프로퍼티: 객체의 상태를 나타내는 값(data)메서드: 프로퍼티(상태 데이터)를 참조하고 조작할 수 있는 동작(behavior)객체는 상태와 동작을 하나의 단위로 구조화할 수 있어 유용합니다. 객체 생성 방법객체 리터럴`Object` 생성자 함수생성자 함수`Object.create` 메서드클래스(ES6)자바스크립트는 프로토타입 기반 객체지향 언어로서 다양한 객체 생성 방법을 지원합니다. 객체 리터럴에 의한 객체 생성객체 리터럴은 객체를 생성하기 위한 표기법입니다. 객체 리터럴은 중괄호(`{...}`) 내에 0개 이상의 프로퍼티를 정의합니다. 변수에 할당되는 ..
타입 변환이란?타입 변환이란 기존 원시 값을 사용해 다른 타입의 새로운 원시 값을 생성하는 것입니다. 개발자가 의도적으로 값의 타입을 변환하는 것을 명시적 타입 변환 또는 타입 캐스팅이라고 합니다. 개발자의 의도와는 상관 없이 표현식을 평가하는 도중에 자바스크립트 엔진에 의해 암묵적으로 타입이 자동 변환하는것을 암묵적 타입 변환 또는 타입 강제 변환이라 합니다.var x = 10;var str = x + '';console.log(typeof str, str); // string 10// x 변수의 값이 변경된것은 아닙니다.console.log(typeof x, x); // number 10 암묵적 타입 변환암묵적 타입 변환이 발생하면 문자열, 숫자, 불리언과 같은 원시 타입 중 하나로 타입을 자동 변환..
제어문제어문은 조건에 따라 코드 블록을 실행(조건문)하거나 반복 실행(반복문)할 때 사용합니다. 제어문을 사용하면 코드의 실행 흐름을 인위적으로 제어할 수 있습니다. 제어문은 코드의 실행 순서를 변경 시킬 수 있기 때문에 직관적인 코드의 흐름을 혼란스럽게 만들 수 있어 가독성을 해칠 수 있다는 단점이 있습니다. 블록문블록문은 0개 이상의 문을 중괄호로 묶은 것으로, 코드 블록 또는 블록이라고 부릅니다. 자바스크립트는 블록문을 하나의 실행 단위로 취급합니다. 블록문은 언제나 문의 종료를 의미하는 종결성을 갖지 때문에 블록문의 끝에는 세미콜론(`;`)을 붙이지 않습니다. 조건문조건문은 주어진 조건식의 평가 결과에 따라 코드 블록(블록문)의 실행을 결정한빈다.if ... else 문주어진 조건식의 평가 결과(..
연산자는 하나 이상의 표현식을 대상으로 산술, 할당, 비교, 논리, 타입, 지수 연산 등을 수행해 하나의 값을 만든다.피연산자: 연산의 대상이다.산술 연산자피연산자를 대상으로 수학적 계산을 수행해 새로운 값을 만든다.산술 연산이 불가능한 경우 NaN을 반환한다.이항 산술 연산자2개의 피연산자를 산술 연산하여 숫자 값을 만든다.5 + 2; // 7 덧셈5 - 2; // 3 뺄셈5 * 2; // 10 곱셈5 / 2; // 2.5 나눗셈5 % 2; // 1 나머지단항 산술 연산자1개의 피연산자를 산술 연산하여 숫자 값을 만든다.var x = 5, result;result = x++;console.log(result, x);// 5 6result = ++x;console.log(result, x);// 7 7r..
데이터 타입(data type): 값의 종류를 말한다.자바스크립트의 모든 값은 데이터 타입을 갖는다.자바스크립트는 7개의 데이터 타입을 제공한다. 원시 타입(primitive type)과 객체 타입(object/reference type)으로 분류된다.구분데이터 타입설명원시 타입숫자(number) 타입숫자. 정수와 실수 구분 없이 하나의 숫자 타입만 존재문자열(string) 타입문자열불리언(boolean) 타입논리적 참(true)과 거짓(false)undefind 타입var 키워드로 선언된 변수에 암묵적으로 할당되는 값null 타입값이 없다는 것을 의도적으로 명시할 때 사용하는 값심볼(symbol) 타입ES6에서 추가된 7번째 타입객체 타입객체, 함수, 배열 등숫자 타입자바스크립트는 하나의 숫자 타입만 ..
값값: 식(표현식)이 평가되어 생성된 결과를 말한다.10 + 20; // 10 + 20은 평가되어 숫자 값 30을 생성한다변수는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름이다 따라서 변수에 할당되는 것은 식이 아니라 값이다. // 변수 sum에 저장되는 것은 표현식 10 + 20이 아닌 평가되어 생성된 값 30이 할당된다var sum = 10 + 20;리터럴리터럴: 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법을 말한다.자바스크립트 엔진은 코드가 실행되는 시점인 런타임에 리터럴을 평가해 값을 생성한다.리터럴예시비고정수 리터럴100 부동소수점 리터럴10.5 2진수 리터럴0b010000010b로 시작8진수 리터럴0o101..