일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- unknown database
- 컬렉션 배열 변환
- http 버전별 단점
- mod_php vs php-fpm
- ajax 통신
- 화살표 함수 this
- AWS EC2 Spring 서버
- jwt 탄생배경
- php 통신구조
- 데이터베이스 언어 종류
- php 통신
- 스프링 데이터 전달
- 배열 컬렉션 변환
- php 통신흐름
- 네트워크 구성 요소
- 스프링 값 받아오기
- Test NullPointerException
- jwt 특징
- Java Roadmap
- 스프링 HTTP 통신
- http 변화
- 데이터베이스 설계 순서
- 주요 네트워크 종류
- ajax 특징
- 테스트 필드주입 Null
- http 버전별 개선점
- ajax 단점
- Java 로드맵
- ajax 장점
- AWS Spring MySQL Redis
- Today
- Total
zkvn99
[JavaScript] 변수 본문
변수 - 하나의 값을 저장하기 위해 확보한 메모리 공간, 그 메모리 공간을 식별하기 위해 붙인 이름
즉 값의 위치를 가리키는 이름
Name = "minwook"; // 문자열은 따옴표로 묶고, 세미콜론 생략할 수 있으나 쓰는 게 좋음
Age = 24; // Age (변수 이름, 식별자라고도 함)
변수 사용
변수는 특수문자를 제외한 문자와 숫자, $와 _만 사용 // const My_birthday = "1999-07-16"; , let _ = 'a'; , let $ = 10;
첫 글자는 숫자가 될 수 없다. // let 1a = '1a'; 불가능
예약어는 사용할 수 없다. // let let = 100; , let class = "class"; 불가능
되도록 상수는 대문자로 선언 // const MAX_SIZE = 110;
변수명은 읽기 쉽고 이해할 수 있게 선언 // let guestNumber = 1;
=> 변수명이 긴 경우 주로 camelcase(낙타 등 모양)로 작성 // longVariableName = "변수명";
상수 - 한번 정해지면 값이 변하지 않음, 따라서 const 사용
변수 선언 - var , let , const 를 사용 ES6에서 let, const가 도입되기 전까지는 var만 사용
let - 변할 수 있는 값 선언 (재선언 x, 재할당 o)
const - 변하지 않는 값 선언 (재선언 x, 재할당 x)
var - 한번 선언된 변수를 다시 선언할 수 있음 / 선언하기 전에 사용할 수 있음 - 호이스팅 (재선언, o, 재할당 o)
let name; // 변수 선언
name = ‘Mike’; // 값 할당
var age; // 변수 선언
age = 30; // 값 할당
const gender = 'male'; // const는 선언과 동시에 할당해주어야 함
var name = 'minwook';
console.log(name); // minwook
var name = 'lee'; // 재선언
console.log(name); // lee
let name = 'minwook';
console.log(name); // minwook
let name = 'lee'; // 재선언
console.log(name); // error : Identifier 'name' has already been declared (이미 선언됨)
console.log(name); // undefined
var name = 'minwook'; // var 로 값 할당할 경우 console.log가 위에 있어도 호이스팅으로 인해 name이 정상 출력
let num = 1;
num = 2; // 재할당
변수의 생성 과정 - 선언 , 초기화 , 할당
var
1. 선언 및 초기화 단계
2. 할당 단계
let
1. 선언 단계
2. 초기화 단계
3. 할당 단계
const
1. 선언 + 초기화 + 할당
var : 함수 스코프 (함수 내에서 선언한 변수만 지역변수) // var는 주로 사용하지 않음
let, const : 블록 스코프 (블록 내에서 선언한 변수는 지역변수)
자바스크립트는 변수 선언이 어디에 있든 상관없이 다른 코드보다 먼저 실행함 - 호이스팅
호이스팅 : 스코프 내부 어디서든 변수 선언은 최상위에 선언된 것처럼 동작
let, const도 호이스팅 가능 var처럼 작동하지 않는 이유
=> Temporal Dead Zone ( let, const는 영향을 받음 ) 줄여서 TDZ는 선언 전에 변수를 사용 못하게 함
TDZ는 코드를 예측할 수 있게하게 하며, 잠재적인 버그를 줄여줌
'Language > JavaScript' 카테고리의 다른 글
[JavaScript] 배열 (0) | 2022.11.25 |
---|---|
[JavaScript] 객체 (0) | 2022.11.20 |
[JavaScript] 함수 (0) | 2022.11.19 |
[JavaScript] 자료형 (0) | 2022.11.17 |