[JS] 변수

2024. 12. 20. 14:53·Javascript

변수

데이터를 저장할 때 쓰이는 '이름이 붙은 저장소'
  • C, Java와 다르게 '담겨'있는 것이 아닌 '가리키는 것'

 

예시 1)

let x = 10
let y = x
let z = y

❌ 틀린 그림

 

⭕️ 맞는 그림


예시 2)

let x = 10
let y = x
let z = y
x = 20
console.log(y, z) // 결과 값은 둘 다 10

 

변수 선언

var, let, const의 키워드를 사용

 

1. var

  • 초기화가 필요 없고 재할당 및 생략 가능
  • 엄격 모드(strict mode)에서 에러 발생
  • 혼동을 야기할 수 있음
  • 권장되지 않음
var x = 1;
console.log(x); // 1

// 재정의 가능
var x = 2;
console.log(x); // 2

 

2. let

  • 동일한 변수명으로 재정의 불가
  • 선언된 코드 블록(함수, if문 등) 밖에서 접근할 수 없음
  • var 키워드의 문제 방지
let x = 1;
let y = 2;
let z = x + y;
console.log(z); // 3

let x = 3; // 에러 발생, 동일한 변수명으로 재정의 불가능

// 재할당은 가능
x = 4;
y = 5;
z = x + y;
console.log(z); // 9

 

3. const

  • 변하지 않는 값인 상수 선언
  • 재할당 불가능
  • 반드시 초기화 필요
  • 선언된 코드 블록(함수, if문 등) 밖에서 접근할 수 없음
const x = 1;
x = 2; // 에러, 재할당 불가능

 

변수 이름 규칙

  1. 변수 이름은 알파벳(대문자, 소문자), 숫자, 언더스코어(_)로 구성
  2. 변수 이름은 숫자로 시작 불가
  3. 키워드(예: if, else, while 등)는 변수 이름으로 사용 불가
  4. 변수 이름은 대소문자 구분
    • Name ≠ name
  5. 관습
    • 일반 변수는 첫 문자를 소문자로 쓰는 것이 보통
    • 사용하지 않는 변수는 언더스코어(_)로 명명
    • 클래스는 첫 문자를 대문자로 사용
    • 변수 이름은 카멜 표기법을 주로 사용

🐍 스네이크 표기법

let user_name = 'js';

🐪 카멜 표기법

let userName = 'js';

 


※ 인프런 제주코딩베이스캠프 이호준 강사님의 강의를 듣고 참고하여 작성했습니다.

728x90
반응형

'Javascript' 카테고리의 다른 글

[JS] Javascript란  (0) 2024.12.11
'Javascript' 카테고리의 다른 글
  • [JS] Javascript란
nueos
nueos
  • nueos
    nueos 공부 기록
    nueos
  • 전체
    오늘
    어제
    • 분류 전체보기 (191)
      • 해커톤 (1)
      • 네이버 BoostCamp (6)
      • LG 유플러스 유레카 SW (3)
        • React (21)
        • TypeScript (2)
        • JavaScript (2)
        • HTML+CSS (5)
        • Spring (7)
        • Java (6)
        • SQL (2)
        • Algorithm (8)
        • CX (6)
        • Git (2)
        • 프로젝트 (2)
        • 스터디 (9)
        • 과제 (8)
        • 특강 (1)
      • React (3)
      • Next (0)
      • Javascript (2)
      • HTML (2)
      • CSS (9)
      • Algorithm (6)
      • Database (0)
      • OS (13)
      • C++ (24)
      • Python (1)
      • jQuery (1)
      • Django (1)
      • Git (1)
      • 개발 지식 (3)
      • 정보 보안 (22)
      • 포렌식 (1)
      • 암호 (2)
      • 기타 (4)
      • 패스트캠퍼스 FE 프로젝트십 (5)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    완전 탐색
    디지랩챌린지
    제주해커톤
    디지털혁신
    Queue
    기술로바꾸는세상
    Stack
    제주지역혁신플랫폼지능형서비스사업단
    힙
    스택
    exhaustive search
    heap
    큐
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.2
nueos
[JS] 변수
상단으로

티스토리툴바