자바스크립트에는 값이 없다는 걸 표현할 때, null 과 undefined 두 종류가 있다.

 

이 차이점을 살펴보자면..

null은 의도적으로 '값이 없음'을 표현할 때 사용되고,

undefined는 값이 없다는 걸 나타낸다.

 

무슨 소리인지 잘 모르겠으니 예시를 통해 알아보자.

let abc;
console.log(abc);
// 출력값은 undefined

 위 처럼 변수를 선언 하였으나 아무 값을 할당하지 않았다면 undefined가 출력된다 (왜냐면 값이 비어있으니까).

 

let abc = null;
console.log(abc);
// 출력값은 null

반면, abc라는 변수를 의도적으로 빈 값을 만들고 싶다면 null을 할당하여준다. 그래서 '이 abc 변수는 의도적으로 만든 빈 값을 가진 변수에요' 라는 것을 나타낸다.

 

참고로, null과 undefined를 아래처럼 동등(==)비교와, 일치(===)비교를 할 때 다른 값이 출력된다.

console.log(null == undefined);
// 출력값은 true

console.log(null === undefined);
// 출력값은 false

 

 

 

Var, Let, Const 차이점

 

Var는 변수가 중복되었을 때 값이 변경될 수 있으므로 사용하지 않는것이 좋겠음. 왠만하면 Const 위주로 사용하고 정말 필요할 때만 let 사용

 

Array (배열, Braket[]을 사용)

//예시 1
const daysOfWeek = ["Mon", "Tue", "Wed", "Thu"];

console.log(daysOfWeek);

//예시 2 (배열 내 특정 순서에 있는 값을 부를 때)
const daysOfWeek = ["Mon", "Tue", "Wed", "Thu"];

console.log(daysOfWeek[2]);

*Camelcase를 통해 띄어쓰기가 필요한 부분은 대문자로 작성할 것

 

Object (배열의 다른방식, Curly braket{}을 사용)

//예시 1
cconst noori = {
    name: "noori",
    age: 10,
    boa: "20 Aug",
    gender: "Female"
};

console.log(noori);

//예시 2 (배열 내 특정 값을 부를 때)
const noori = {
    name: "noori",
    age: 10,
    boa: "20 Aug",
    gender: "Female"
};

console.log(noori.boa);

 

const로 object 값을 지정하였지만 object내의 값은 아래줄에 변수 선언을 통해 값을 변경할 수 있음. (자바스크립트에서만 그런지는 아직 잘 모르겠음)

const noori = {
    name: "noori",
    age: 10,
    boa: "20 Aug",
    gender: "Female"
};

age = 12;

console.log(age);

위와 같이 코드를 작성하면 age는 12가 출력됨

 

Object 내에 Array값을 저장하는 것도 가능함

const noori = {
    name: "noori",
    age: 10,
    boa: "20 Aug",
    gender: "Female",
    more: ["milk", "rice", "meat"],
};

console.log(noori);

+ Recent posts