๐Ÿ—ณ๏ธ Object property ํ™œ์šฉ๊ณผ ์ œ์–ด๋ฌธ

Yeonnยท2024๋…„ 3์›” 23์ผ
0

JavaScript

๋ชฉ๋ก ๋ณด๊ธฐ
19/23
post-thumbnail

โœจ Object properties

โœ”๏ธย in ์—ฐ์‚ฐ์ž

  • ๊ฐ์ฒด ๋‚ด์— ํŠน์ • ํ”„๋กœํผํ‹ฐ๊ฐ€ ์กด์žฌํ•˜๋Š”์ง€ ์—ฌ๋ถ€ ํ™•์ธ

โœ”๏ธย Object.hasOwnProperty()

  • ๊ฐ์ฒด์— ํŠน์ • ํ”„๋กœํผํ‹ฐ๊ฐ€ ์กด์žฌํ•˜๋Š”์ง€ ํ™•์ธ
const person = {
	name: 'Tia',
	address: 'Seoul'
};

console.log('name' in person) // true
console.log('person.hasOwnProperty('name)) // true

โœ”๏ธย for โ€ฆ in

  • for ( ๋ณ€์ˆ˜์„ ์–ธ๋ฌธ in ๊ฐ์ฒด ){ ... }
  • ๊ฐ์ฒด์˜ ๋ชจ๋“  ํ”„๋กœํผํ‹ฐ๋ฅผ ์ˆœํšŒํ•˜๋ฉฐ ์—ด๊ฑฐํ•˜๋ ค๋ฉด for โ€ฆ in ๋ฌธ์„ ์‚ฌ์šฉ
for( key in person) {
  console.log( `${key}: ${person[key]}` ) 
}
// name: Tia 
//address: Seoul

โœ”๏ธย Object.keys/values/entries

console.log(Object.keys(person)); // ['name', 'address']
console.log(Objects.values(person)); // ['Tia', 'Seoul']
console.log(Objects.entries(person)); //['name', 'Tia'], ['address', 'Seoul']
Object.entries(person).forEach(([key, value]) => console.log(key, value));
// name Tia 
// address Seoul

โœจ ์ œ์–ด๋ฌธ

๐Ÿ“˜ ์ œ์–ด๋ฌธ( control flow statement )

์กฐ๊ฑด๋ฌธ: ์กฐ๊ฑด์— ๋”ฐ๋ผ ์ฝ”๋“œ ๋ธ”๋ก์„ ์‹คํ–‰
๋ฐ˜๋ณต๋ฌธ: ์กฐ๊ฑด์— ๋”ฐ๋ผ ์ฝ”๋“œ ๋ธ”๋ก์„ ๋ฐ˜๋ณต ์‹คํ–‰

โ“ย ์กฐ๊ฑด๋ฌธ( conditional statement )

  • ์ฃผ์–ด์ง„ ์กฐ๊ฑด์‹( conditional expression ) ์˜ ํ‰๊ฐ€ ๊ฒฐ๊ณผ์— ๋”ฐ๋ผ ์ฝ”๋“œ ๋ธ”๋ก( ๋ธ”๋ก๋ฌธ )์˜ ์‹คํ–‰์„ ๊ฒฐ์ •
  • ๋ถˆ๋ฆฌ์–ธ ๊ฐ’์œผ๋กœ ํ‰๊ฐ€๋  ์ˆ˜ ์žˆ๋Š” ํ‘œํ˜„
    • ์‚ผํ•ญ์—ฐ์‚ฐ์ž: ๋‹จ์ˆœํžˆ ๊ฐ’์„ ๊ฒฐ์ •ํ•˜์—ฌ ๋ณ€์ˆ˜์— ํ• ๋‹นํ•  ๊ฒฝ์šฐ
    • if ... else: ์กฐ๊ฑด์— ๋”ฐ๋ผ ์‹คํ–‰ํ•ด์•ผ ํ•  ๋‚ด์šฉ์ด ๋ณต์žกํ•˜์—ฌ ์—ฌ๋Ÿฌ ์ค„์˜ ๋ฌธ์ด ํ•„์š”ํ•  ๊ฒฝ์šฐ
    • switch: ์กฐ๊ฑด์ด ๋„ˆ๋ฌด ๋งŽ์•„์„œ ๊ฐ€๋…์„ฑ์ด ๋–จ์–ด์งˆ ๊ฒฝ์šฐ

โœ”๏ธย if โ€ฆ else

  • ์กฐ๊ฑด์‹์€ ๋ถˆ๋ฆฌ์–ธ ๊ฐ’์œผ๋กœ ํ‰๊ฐ€๋˜์–ด์•ผ ํ•จ
  • ์ฝ”๋“œ ๋ธ”๋ก ๋‚ด์˜ ๋ฌธ์ด ํ•˜๋‚˜๋ฟ์ด๋ผ๋ฉด ์ค‘๊ด„ํ˜ธ ์ƒ๋žต ๊ฐ€๋Šฅ
if( ์กฐ๊ฑด์‹1 ) {
	// ์กฐ๊ฑด์‹1์ด true ์ด๋ฉด ์‹คํ–‰๋  ์ฝ”๋“œ;
}else if ( ์กฐ๊ฑด์‹2 ) {
	// ์กฐ๊ฑด์‹2๊ฐ€ true ์ด๋ฉด ์‹คํ–‰๋  ์ฝ”๋“œ;
}else {
	// ๋ชจ๋“  ์กฐ๊ฑด์‹์ด false ์ด๋ฉด ์‹คํ–‰๋  ์ฝ”๋“œ;
}

โœ”๏ธย ์‚ผํ•ญ์—ฐ์‚ฐ์ž

์กฐ๊ฑด์‹ ? ์กฐ๊ฑด์‹์ด true ์ผ ๊ฒฝ์šฐ ๋ฐ˜ํ™˜ํ•  ๊ฐ’ : ์กฐ๊ฑด์‹์ด false ์ผ ๊ฒฝ์šฐ ๋ฐ˜ํ™˜ํ•  ๊ฐ’

โœ”๏ธย switch

  • ์ฃผ์–ด์ง„ ํ‘œํ˜„์‹์„ ํ‰๊ฐ€ํ•˜์—ฌ ๊ทธ ๊ฐ’๊ณผ ์ผ์น˜ํ•˜๋Š” ํ‘œํ˜„์‹์„ ๊ฐ–๋Š” case ๋ฌธ์œผ๋กœ ์ด๋™, default ๋Š” optional
switch ( ํ‘œํ˜„์‹ ){
	case ํ‘œํ˜„์‹ 1:
		switch ๋ฌธ์˜ ํ‘œํ˜„์‹๊ณผ ํ‘œํ˜„์‹1์ด ์ผ์น˜๋  ๊ฒฝ์šฐ ์‹คํ–‰๋  ์ฝ”๋“œ;
		break;
	case ํ‘œํ˜„์‹ 2:
		switch ๋ฌธ์˜ ํ‘œํ˜„์‹๊ณผ ํ‘œํ˜„์‹2์ด ์ผ์น˜๋  ๊ฒฝ์šฐ ์‹คํ–‰๋  ์ฝ”๋“œ;
		break;
	default:
		switch ๋ฌธ์˜ ํ‘œํ˜„์‹๊ณผ ์ผ์น˜ํ•˜๋Š” case ๊ฐ€ ์—†์„ ๋•Œ ์‹คํ–‰๋  ์ฝ”๋“œ;
}

โ“ย ๋ฐ˜๋ณต๋ฌธ( loop statement )

  • ์กฐ๊ฑด์‹์˜ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๊ฐ€ true์ธ ๊ฒฝ์šฐ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๊ฐ€ false๊ฐ€ ๋  ๋•Œ๊นŒ์ง€ ์ฝ”๋“œ ๋ธ”๋ก์„ ๋ฐ˜๋ณต ์‹คํ–‰
  • for: ๋ฐ˜๋ณต ํšŸ์ˆ˜๊ฐ€ ๋ช…ํ™•ํ•  ๋•Œ ์ฃผ๋กœ ์‚ฌ์šฉ
  • while: ๋ฐ˜๋ณต ํšŸ์ˆ˜๊ฐ€ ๋ถˆ๋ช…ํ™•ํ•  ๋•Œ ์ฃผ๋กœ ์‚ฌ์šฉ

โœ”๏ธย for

  • ์กฐ๊ฑด์‹์ด ๊ฑฐ์ง“์œผ๋กœ ํ‰๊ฐ€๋  ๋•Œ๊นŒ์ง€ ์ฝ”๋“œ ๋ธ”๋ก์„ ๋ฐ˜๋ณต ์‹คํ–‰
  • ๋ณ€์ˆ˜ ์„ ์–ธ๋ฌธ, ์กฐ๊ฑด์‹, ์ฆ๊ฐ์‹์€ ๋ชจ๋‘ ์˜ต์…˜( ์„ ์–ธํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ( ; ; ) ๋กœ ๊ตฌ๋ถ„๋งŒ !
for( ๋ณ€์ˆ˜ ์„ ์–ธ๋ฌธ ๋˜๋Š” ํ• ๋‹น๋ฌธ; ์กฐ๊ฑด์‹; ์ฆ๊ฐ์‹ ){
	์กฐ๊ฑด์‹์ด true ์ผ ๊ฒฝ์šฐ ๋ฐ˜๋ณต ์‹คํ–‰๋  ์ฝ”๋“œ;
}

// ์ด์ค‘ ์ค‘์ฒฉ for๋ฌธ
for( let i = 0; i < arr.length; i ++ ){
	for( let j = 1; i <= arr.length; i ++ ){
		์กฐ๊ฑด์‹์ด true ์ผ ๊ฒฝ์šฐ ๋ฐ˜๋ณต ์‹คํ–‰๋  ์ฝ”๋“œ;
}

๐Ÿ“ฎ for ?

array: forEach()
object: for ... in
iterable: for ... of

โœ”๏ธย while

  • ์ฃผ์–ด์ง„ ์กฐ๊ฑด์‹์˜ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๊ฐ€ ์ฐธ์ด๋ฉด ์ฝ”๋“œ ๋ธ”๋ก์„ ๊ณ„์†ํ•ด์„œ ๋ฐ˜๋ณต ์‹คํ–‰
  • ๋งŒ์•ฝ ์กฐ๊ฑด์‹์˜ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๊ฐ€ ๋ถˆ๋ฆฌ์–ธ ๊ฐ’์ด ์•„๋‹ˆ๋ฉด ๋ถˆ๋ฆฌ์–ธ ๊ฐ’์œผ๋กœ ๊ฐ•์ œ ๋ณ€ํ™˜ํ•˜์—ฌ ๋…ผ๋ฆฌ์  ์ฐธ, ๊ฑฐ์ง“ ๊ตฌ๋ณ„
  • ํ‰๊ฐ€ ๊ฒฐ๊ณผ๊ฐ€ ์–ธ์ œ๋‚˜ ์ฐธ์ด๋ฉด ๋ฌดํ•œ๋ฃจํ”„
    : ํƒˆ์ถœ์„ ์œ„ํ•ด ์ฝ”๋“œ ๋ธ”๋ก ๋‚ด if๋ฌธ ์œผ๋กœ ํƒˆ์ถœ ์กฐ๊ฑด์„ ๋งŒ๋“ค๊ณ  break๋ฌธ ์œผ๋กœ ์ฝ”๋“œ ๋ธ”๋ก ํƒˆ์ถœ
let count = 0;

//๋ฌดํ•œ ๋ฃจํ”„
while( true ){
	console.log(count);
	count ++;
	
	if( count === 3( break;
} // 0 1 2

โœ”๏ธย do โ€ฆ while

  • ์ฝ”๋“œ ๋ธ”๋ก์„ ๋จผ์ € ์‹คํ–‰ํ•˜๊ณ  ์กฐ๊ฑด์‹์„ ํ‰๊ฐ€
  • ์ฆ‰, ์ฝ”๋“œ ๋ธ”๋ก์€ ๋ฌด์กฐ๊ฑด ํ•œ๋ฒˆ ์ด์ƒ ์‹คํ–‰๋จ
let count = 0;

do {
	console.log(count); // 0 1 2
	count ++;
}while( count < 3 );

โœ”๏ธย break

  • ๋ฐ˜๋ณต๋ฌธ / switch ๋ฌธ์˜ ์ฝ”๋“œ ๋ธ”๋ก ํƒˆ์ถœํ•˜๊ธฐ

0๊ฐœ์˜ ๋Œ“๊ธ€