๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป ๋ชจ๋˜ ๋ฆฌ์•กํŠธ Deep Dive

pjw__98ยท2024๋…„ 1์›” 2์ผ
1
post-thumbnail

๐Ÿ“š์ฑ•ํ„ฐ

๋ฆฌ์•กํŠธ์—์„œ์˜ ์‚ผํ•ญ ์กฐ๊ฑด ์—ฐ์‚ฐ์ž?

๐Ÿ“† ํ•™์Šต ๋‚ ์งœ

2024 / 01 / 02 (ํ™”)


๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ปํ•™์Šต ๋‚ด์šฉ

๐ŸŽฏ์‚ผํ•ญ ์กฐ๊ฑด ์—ฐ์‚ฐ์ž

์‚ผํ•ญ ์กฐ๊ฑด ์—ฐ์‚ฐ์ž๋Š” JS์—์„œ ์œ ์ผํ•˜๊ฒŒ 3๊ฐœ์˜ ํ”ผ์—ฐ์‚ฐ์ž๋ฅผ ์ทจํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ๋ฒ•์ด๋‹ค.

			์กฐ๊ฑด๋ฌธ ? ์กฐ๊ฑด๋ฌธ์ด ์ฐธ true value : ์กฐ๊ฑด๋ฌธ์ด ๊ฑฐ์ง“ false value

์‚ผํ•ญ ์กฐ๊ฑด ์—ฐ์‚ฐ์ž๋Š” ๊ธฐ์กด if ์กฐ๊ฑด๋ฌธ์„ ๊ฐ„๋žตํ•˜๊ฒŒ ์“ธ ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์—์„œ ๋ฆฌ์•กํŠธ์—์„œ ์ž์ฃผ ํ™œ์šฉํ•˜๋Š”๋ฐ, ํŠนํžˆ JSX ๋‚ด๋ถ€์—์„œ ์กฐ๊ฑด๋ถ€๋กœ ๋ Œ๋”๋งํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ฃผ๋กœ ํ™œ์šฉ ๋œ๋‹ค๊ณ  ํ•œ๋‹ค.

<script>
export default function Component({ condition }){
	return <>{condition ? 'true' : 'false' }</>
}
</script>

๊ทธ๋Ÿฌ๋‚˜ ์ด๋Ÿฌํ•œ ํŽธ๋ฆฌํ•จ์ด ์ฃผ๋Š” ์ด์  ๋•Œ๋ฌธ์— ์‚ผํ•ญ ์กฐ๊ฑด ์—ฐ์‚ฐ์ž ๋‚ด๋ถ€์—์„œ ๋˜๋‹ค์‹œ ์‚ผํ•ญ ์—ฐ์‚ฐ์ž๋ฅผ ์ค‘์ฒฉํ•ด์„œ ์“ฐ๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ข…์ข… ๋ฐœ์ƒํ•œ๋‹ค.

์‚ผํ•ญ ์กฐ๊ฑด ์—ฐ์‚ฐ์ž๋Š” ๊ฐ€๊ธ‰์ ์ด๋ฉด ์ค‘์ฒฉํ•ด์„œ ์“ฐ์ง€ ์•Š๋Š” ํŽธ์ด ์ข‹๋‹ค.

์‚ผํ•ญ ์กฐ๊ฑด ์—ฐ์‚ฐ์ž ๋ง๊ณ ๋„ ์กฐ๊ฑด๋ถ€ ๋ Œ๋”๋ง์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ์ฆ‰์‹œ ์‹คํ–‰ ํ•จ์ˆ˜ ๋ฐฉ๋ฒ•๋„ ์กด์žฌํ•œ๋‹ค.

<script>
import { useState } from 'react'

export default function App(){
	const [count , setCount] useState(0)
    return (
    <div>
    {(() => {
    	if( count === 1 ) {
        	return ++count
        }else {
        	return --count
        }
    })()}
    </div>
    )
   }
</script>

ํ•˜์ง€๋งŒ ์ฆ‰์‹œ ์‹คํ–‰ ํ•จ์ˆ˜ ๋ฌธ๋ฒ•์€ JSX ๋‚ด๋ถ€์˜ ๊ฐ€๋…์„ฑ์„ ํ•ด์น˜๊ณ  ๋ถˆํ•„์š”ํ•˜๊ฒŒ ์ฆ‰์‹œ ์‹คํ–‰ ํ•จ์ˆ˜๋ฅผ ์„ ์–ธํ•ด์„œ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค๋Š” ์  ๋•Œ๋ฌธ์— ์ž์ฃผ ํ™œ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค.

โžก๏ธ ๋‹ค์Œ์€ ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ์— ๋Œ€ํ•ด ์‚ดํŽด๋ณด์ž.

profile
โ˜„๏ธ

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