1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | //순서 상관없이 해도 undefined가 뜰 뿐, 오류가 나지 않는다. console.log(a); //출력결과 : undefined var a = 0; //중복 선언해도 오류가 나지 않는다. var b = 1; console.log(b); //출력결과 : 1 var b = 5; console.log(b); //출력결과 : 5 //함수 범위의 스코프를 가진다. var c = 1; if (true){ var c = 5; } console.log(c); //출력결과 : 5 |
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 32 33 34 35 36 | //변수 선언 전 출력할 경우 오류가 난다. console.log(a); //출력결과 : Uncaught ReferenceError : Cannot access 'a' before initialization let a = 0; //중복 선언하면 오류가 난다. (let의 경우 재할당은 가능하다) let b = 1; console.log(b); //출력결과 : 1 b = 5; console.log(b); //출력결과 : 5 let b = 7; console.log(b); //출력결과 : Uncaught SyntaxError : Identifier 'b' has already been declared //const의 경우 값의 재할당도 불가하다. const c = 1; console.log(c); //출력결과 : 1 c = 1; console.log(c); //출력결과 : Uncaught TypeError : Assignment to constant variable. const c = 5; console.log(c); //출력결과 : Uncaught SyntaxError : Identifier 'c' has already been declared. //블록 범위의 스코프 (함수 안에서 선언한 변수는 외부에 영향을 끼치지 않음) let abc = 1; if (true){ let abc = 5; console.log(abc); //출력결과 : 5 } console.log(abc) //출력결과 : 1 |
1 2 3 4 5 6 7 | let 변수명 = "사용할 문자나 숫자"; //기본형태 let s = "javascript"; //s라는 변수의 값은 javascript 라는 문자로 출력된다. let num = "100"; //num이라는 변수에 숫자 100을 기입했지만 따옴표로 감쌌으므로 100이라는 글자(문자)로 담긴다. let tag = "<h1>hello</h1"; //<h1></h1>이라는 태그를 따옴표로 감쌌지만 출력하면 h1은 태그로 인식된다. //예시 console.log(num + num) //출력결과 : 200이 아니라 100100이라는 글자가 출력된다. |
1 2 3 4 5 6 7 8 9 | let 변수명 = 숫자; let 변수명 = Number("숫자"); let s = 100; let t = Number("100"); console.log(s + t) //출력결과 : 200 console.log(s + "만원") //출력결과 : 100만원 console.log(s + t + "만원") //출력결과 : 200만원 console.log(s + "100" + "만원") //출력결과 : 100100만원 |
1 2 3 4 5 6 7 | let 변수명 = true 혹은 false; let 변수명 = Boolean(데이터); let s = true; let t = 10 > 100; //10은 100보다 크다는 명제가 틀렸으므로 false 라는 값이 저장된다. let k = Boolean("hello"); //데이터 값에 0, null, undefined를 제외한 모든 데이터는 true로 반환하여 저장된다. let a = Boolean(0); //a에 false 값을 반환하여 저장한다. |
1 | let a = null; |
1 | let a; |
1 2 3 4 5 | typeof 변수 또는 데이터; console.log(typeof "100"); //출력결과 : String console.log(typeof 100); //출력결과 : number console.log(typeof true); //출력결과 : boolean |