true
26
1000 + 900 + 90 + 4
"Anna"
"Hello" + "JavaScript"
alert(1000 +900 + 90 + 4);
alert ("Hello" + " JavaScript");
var name ="Mark";
alert("Hello");
true; 26; 1000+900+90+4;
=> 1994
자바스크립트에서 특정한 목적을 위해 사용하는 단어. Reserved Keywords예약어로 지정되어 있음.
var
: 변수를 선언할 때 사용하는 키워드. 변수를 선언함.var return
, function for
등은 불가능.앞으로 예약어로 쓰일 가능성이 있는 예약어. 역시 사용 불가능.
var name ="Mark";
여기선 Mark는 name이라는 변수의 이름.function hello() {}
: hello가 함수의 이름.var person = {name: "Mark", age: 37};
: name, agevar name1;
var $name;
var _name;
var 이름; // 가능은 함. 하지만 영문을 사용.
var 1name; // 불가능.
변수나 함수의 이름을 짓는 건 언제나 어려운 일. 적절한 이름을 짓도록 노력해야.
//
를 사용.// 블라블라.
/* */
를 사용.const 상수_이름 = 값;
let 변수_이름;
변수_이름 = 값; / let 변수_이름 = 값;
블록{ }
안에서 선언된 변수, 상수는 그 블록 안에서만 사용가능하다. 블록 밖에서 선언된 것은 다른 블록 안에서 사용할 수 있다.
{
const name = "Mark";
console.log(name);
}
//Mark를 출력.
console.log(name);
// 오류. name이 블록 안에서 선언되어 블록 밖에서는 사용 불가능
age = 6;;
age++;
console.log(age);
var age;
도 작동한다!
console.log(name); // undefined
name = "Mark";
console.log (name); // Mark
var name;
console.log(name); // undefined
name = "Mark";
console.log (name); // Mark
var name = "Hyeonsu";
: var name = "Hyeonsu";
이 통으로 올라가는 게 아니라 var name
라는 선언부만 올라간다.
let에서는 hoisting 문제가 발생하지 않는다. 무조건 위에서 선언해야 함.