๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
javascript๐Ÿช“/์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ณต๋ถ€

๋ณ€์ˆ˜๊ฐ€ ์ €์žฅ๋˜๋Š” ๋ฐฉ๋ฒ• variable types (primitive or object)

by hyojinny 2023. 8. 29.

primitive > single item : numver, string, boolean , null , undefined , symbol

object > box container (์ผ์ƒ์ƒํ™œ์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋Š” ๋ฌผ๊ฑด ๋ฌผ์ฒด๋“ฑ์„ ๋Œ€ํ‘œํ•˜๋Š” ๋ฐ•์Šคํ˜•ํƒœ)

 


primitive ํƒ€์ž…๊ณผ object ์˜ ํƒ€์ž…์ด ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ๋˜๋Š” ํ˜•ํƒœ

 

 

 

primitive type

let name = 'ellie'; // name์ด๋ž€ ๋ณ€์ˆ˜์— ellie ์„ ์–ธ
name = 'hello'; // ๋ณ€์ˆ˜ ์žฌํ• ๋‹น
console.log('name: ', name); // name = hello ๊ฐ€๋จ

 

 ๊ฐ’ ์ž์ฒด๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ๋จ 

 

 

 

 

 

 

 

 


object type

 

const ellie = { name: 'ellie', age: 20 };

//์ด ellie ๋Š” const ๋กœ ์ง€์ •์ด ๋˜์–ด์žˆ์–ด์„œ ํ•œ๋ฒˆ ํ• ๋‹น๋œ ์ด ์˜ค๋ธŒ์ ํŠธ๋Š” ๋‹ค๋ฅธ ์˜ค๋ธŒ์ ํŠธ๋กœ ํ• ๋‹น ๋ถˆ๊ฐ€
//๋‹จ ellie ์˜ค๋ธŒ์ ํŠธ ์•ˆ์— name๊ณผ age ๋กœ ๋ณ€์ˆ˜๊ฐ€ ์žˆ์–ด์„œ ellie.name ์œผ๋กœ ๋ณ€์ˆ˜์— ์ ‘๊ทผํ•ด ์žฌํ• ๋‹น ๊ฐ€๋Šฅ

ellie.name = 'ellllllllie';
ellie.age = 30;
console.log('ellie: ', ellie);

 

๋„ˆ๋ฌด์ปค์„œ ๋ฉ”๋ชจ๋ฆฌ์— ํ•œ๋ฒˆ์— ์˜ฌ๋ผ๊ฐ€์ง€ ๋ชปํ•จ

์˜ค๋ธŒ์ ํŠธ๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ๋ ˆํผ๋Ÿฐ์Šค๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ

 

 

 

 

 

 

 

 

 

*์ถ”๊ฐ€๋…ธํŠธ ๋ฐ์ดํ„ฐํƒ€์ž… 

immutable data type : premitive type , frozen objects ( ๋ฐ์ดํ„ฐ ์ž์ฒด๋ฅผ ์ ˆ๋Œ€ ๋ณ€๊ฒฝ๋ถˆ๊ฐ€)


mutable data  types : all objects , ๋ฐฐ์—ด (๋ณ€์ˆ˜ ์žฌํ• ๋‹น ๊ฐ€๋Šฅ)

- ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„  ๋ชจ๋“  ์˜ค๋ธŒ์ ํŠธ๋“ค์ด ๋Œ€๋ถ€๋ถ„ ๋ณ€๊ฒฝ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

//์ด๋Ÿฐ๊ฒƒ๋“ค์ด ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•œ mutable data types : ๋ฐฐ์—ด
const ellie = { name: 'ellie', age: 20 };
ellie.name = 'ellllllllie';
ellie.age = 30;

 

 

 

๋”๋ณด๊ธฐ

์ถœ์ฒ˜ : ๋“œ๋ฆผ์ฝ”๋”ฉ ๋ณด๋ฉด์„œ ๊ณต๋ถ€์ค‘!

https://youtu.be/YBjufjBaxHo?si=S_ZStoqFhsJcJnho

๋Œ“๊ธ€