본문 바로가기

WINK-(Web & App)/Express.js (Node.js) 스터디

[2024 JS 심화 백엔드 스터디] 김민서 #1주차 "JS 기본 (1)"

반응형
자바스크립트

웹 브라우저에서 많이 사용하는 언어, Node.js의 개발로 자바스크립트의 활용 영역이 넓어졌다. 

인터프리터언어, 동적 자료형을 가진다. 

 

출력 메소드와 주석

1. 콘솔

console.log("JavaScript Programming");

자바스크립트의 가장 기본적인 출력 방법. 메소드의 괄호 안에 문자열 또는 다양한 자료형을 입력해서 사용한다. 타 언어의 print 같은 역할을 한다.

 

2. 주석

프로그램의 진행에 영향을 주지 않는 코드. 프로그램을 설명할 때 사용한다.

// 주석입니다.
/*
주석
주석
주석입니다
*/

두 가지 주석 처리 방법이 있는데, //을 사용해 한 줄만 주석으로 처리하거나 /*와 */를 사용해 여러 줄을 주석으로 처리할 수 있다.

 

변수와 상수

1. 변수

변수는 값을 저장할 때 사용하는 식별자이다. 변수를 선언하고 변수에 값을 할당하여 사용할 수 있다.

let pi;
pi = 3.141592;

변수 pi를 선언하고 pi에 값을 할당했다.

 

변수는 할당된 데이터를 바꿀 수 있다.

let a = 1; // 변수 a에 1을 할당
console.log(a);

let b = a; // a에 있던 데이터를 b로
console.log(a, b);

a = 2; // a에 있던 데이터 변경
console.log(a, b);

 

2. 상수

변경하지 않을 대상에 상수를 적용한다.

//상수 선언
const constant = "변경불가";
constant = "";

//출력
console.log(constant);

코드를 실행하면 오류가 발생한다. 상수 값은 변경할 수 없기 때문이다.

 

자료형과 연산자

변수의 자료형을 확인할 때는 typeof 연산자를 사용한다.

! 연산자는 뒤에 오는 불리언의 반대 값을 반환한다.

 

1. 자료형

// 문자열
typeof('String')

// 숫자
typeof(256)

// 불
typeof(true)

// 함수
typeof(function () { })

// 객체
typeof({})

// undefined
typeof(zmzm)

출력값은 순서대로 'string', 'number', 'boolean', 'function', 'object', 'undefined'인 것을 확인 할 수 있다.

*null: 비어있다는 정보를 제공

 

2. 비교 연산자

연산자 설명
== 자료형과 관계 없이 값이 같음
=== 자료형도 값도 같음
!= 자료형과 관계 없이 값이 다름
!== 자료형도 값도 다름
> 왼쪽 피연산자가 크다
< 오른쪽 피연산자가 크다
>= 왼쪽 피연산자가 크거나 같다
<= 오른쪽 피연산자가 크거나 같다

 

3. 논리 연산자

연산자 설명
! 논리 부정 연산자
|| 논리합 연산자
&& 논리곱 연산자

 

4. 증감 연산자

연산자 설명
변수++ 변수 값에 1을 더함(문장을 실행한 후 값을 변경)
++변수 변수 값에 1을 더함(문장을 실행하기 전에 값을 변경)
변수-- 변수 값에서 1을 뺌(문장을 실행한 후 값을 변경)
--변수 변수 값에서 1을 뺌(문장을 실행하기 전에 값을 변경)

 

5. 할당 산술 연산자

연산자 설명
x += y x = x+y
x -= y x = x-y
x *= y x = x*y
x /= y x = x/y
x %= y x = x%y
x **= y x = x**y

 

객체와 배열

1. 객체

객체는 데이터의 묶음이다. 키:값 (프로퍼티)

원시 자료형 이외의 모든 데이터는 객체이다.

const person1 = {
  name: '김민서',
  age: 20,
  married: false
};

// 값에 접근하기
console.log(
	person1.name, // . 뒤에 키 이름 (식별자 명명 규칙에 맞을 시)
	person1['name'] // [] 안에 키 이름을 문자열로
);

// 프로퍼티 추가
person1.job = 'student';
person1['bloodtype'] = 'B';
console.log(person1);

// 프로퍼티 수정
person1.age++;
console.log(person1);

// const 여도 상수 그 자체가 아닌 내부 데이터는 변경 가능하다.

 

2. 배열

다수의 데이터를 저장한다. 키가 number 타입인 객체이며, 요소들의 자료형의 제한이 없다.

  • length 프로퍼티 : 배열의 요소 개수를 반환

* .push(): 요소 추가

* .pop(): 제거

 

조건문

1. if 조건문

if (<불 표현식>) {

}

가장 기본적인 조건문이다. 위와 같은 기본 형태로 사용한다.

 

2. if else 조건문

if (<불 표현식>) {
      불 표현식이 참일 때 실행할 문장
} else {
            불 표현식이 거짓일 때 실행할 문장
}

 

3. 중첩 조건문

if (불 표현식) {
       if (불 표현식) {
            문장;
       } else {
            문장;
       }
} else {
      if (불 표현식) {
            문장;
      } else {
            문장;
      }
}

조건문 안에 조건문을 중첩해 사용할 수 있다.

 

4. if else if 조건문

if (<불 표현식>) {

} else if (<불 표현식>) {

} else if (<불 표현식>) {

} else {

}

중복되지 않는 세 가지 이상의 조건을 구분할 때 사용한다.

 

5. switch 조건문

switch (<비교할 값>) {
       case <값> :
               <문장>
               break;
       case <값> :
               <문장>
               break;      
       default:
               <문장>
               break;
}

특정 변수나 상수의 값 또는 반환값에 따라 작업을 실행할 때 사용한다.

반응형