node.js 활용 -> 확장자명을 js (ex - hello.js) 로 명시해주면 해당 파일이 자바스크립트 언어를 사용한 파일임을 명시해준다(컴퓨터가 자바스크립트 파일로 인식할 수 있음)
변수선언 키워드
let, const, var
let 선언된 구역에서만 사용할 수 있는 변수 선언이다. 선언된 블록 범위에서 같은 변수 이름으로 선언하면 에러가 발생하며 선언후 변수의 값을 여러번 변경 할 수 있다
const는 선언할 때 초기값을 지정해야 한다. 이후 한번 데이터를 할당(선언) 후엔 재할당(재정의) 불가하다 //자바의 파이널과 비슷한건가?
var 선언자는 블록 범위에서 사용이 가능한 변수 선언이다. 함수에서 선언되었다면 함수 전체에서 사용이 가능한 범위를 말한다.
자바스크립트에서는 따로 데이터 타입을 지정하지 않아도 선언된 변수에 모든 값을 넣을 수 있다.
문자열이든 숫자이든 객체이든 모든 타입이 저장이 된다.
var와 let의 차이점
var 선언은 전역변수 선언, let선언은 지역변수 선언 개념
아마 var 선언을 근래에 사용지 않는 이유는
var age = 20
var age = 20
과 같이 변수를 선언하여도 오류가 나지 않는 이유일거 같다.
let age = 20
let age = 20
동일하게 let 선언을 사용하여 위의 코드를 대체하면 오류가 발생한다.
변수의 타입중 Object 타입은 키와 벨류의 값으로 데이터를 저장한다
ex)
const person = {
name: '강승현',
age: 52
};
다만 키의 값으로 유효한 자바스크립트 식별자를 사용하지 않는 경우 반드시 obj['key'] 와 같은 표현식을 사용해야 한다.
여백(스페이스), 대쉬(-) 등 허용되지 않은 문자열이 포함된 경우 변수를 만들 수 없는것처럼 object의 키로 사용하기 위해서는 따옴표로 감싸야 함
ex)
const person = {
name: '강승현',
age: 52,
'raising dog': '푸들'
}
NaN 타입 (Not a Number)
숫자가 아닌 값을 숫자로 변환하는 경우 NaN으로 반환 됨