๊ด€๋ฆฌ ๋ฉ”๋‰ด

ruriruriya

[JavaScript] ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ - ๋ชจ๋“ˆ ๋ณธ๋ฌธ

๐Ÿ–Œ๏ธWeb/JavaScript

[JavaScript] ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ - ๋ชจ๋“ˆ

๋ฃจ๋ฆฌ์•ผใ…‘ 2024. 4. 21. 14:03
๋ฐ˜์‘ํ˜•

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋ชจ๋“ˆ ์‹œ์Šคํ…œ์€ ์ฝ”๋“œ๋ฅผ ์—ฌ๋Ÿฌ ํŒŒ์ผ๋กœ ๋ถ„ํ• ํ•˜๊ณ , ๊ฐ ํŒŒ์ผ์—์„œ ๊ฐœ๋ณ„์ ์œผ๋กœ ๊ธฐ๋Šฅ์„ ์ •์˜ํ•œ ํ›„ ๋‹ค๋ฅธ ํŒŒ์ผ์—์„œ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ๋†’์ด๊ณ , ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์˜ค์—ผ์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค. ES6์—์„œ ๊ณต์‹์ ์œผ๋กœ ๋ชจ๋“ˆ ์‹œ์Šคํ…œ์„ ์ง€์›ํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์œผ๋ฉฐ, import์™€ export ๋ฌธ์„ ์‚ฌ์šฉํ•œ๋‹ค.

 

๋ชจ๋“ˆ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•

export - ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์šฐ์„  ๊ธฐ๋Šฅ์„ ์ •์˜ํ•˜๊ณ  ๋‚ด๋ณด๋‚ด์•ผ ํ•œ๋‹ค.

import - ๊ทธ ๋‹ค์Œ, ๋‹ค๋ฅธ ํŒŒ์ผ์—์„œ ๊ทธ ๊ธฐ๋Šฅ์„ ๋ถˆ๋Ÿฌ์™€์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

1. ๊ธฐ๋Šฅ ๋‚ด๋ณด๋‚ด๊ธฐ

[ mathUtils.js ]

// ์—ฌ๋Ÿฌ ํ•จ์ˆ˜๋ฅผ export ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
export function add(x, y) {
  return x + y;
}

export function subtract(x, y) {
  return x - y;
}

// ๋ณ€์ˆ˜, ํด๋ž˜์Šค ๋˜ํ•œ export ๊ฐ€๋Šฅ
export const pi = 3.14159;

 

2. ๊ธฐ๋Šฅ ๊ฐ€์ ธ์˜ค๊ธฐ

[ app.js ]

// ๋‹ค๋ฅธ ํŒŒ์ผ์—์„œ ํ•จ์ˆ˜๋ฅผ import ํ•ด์„œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
import { add, subtract, pi } from './mathUtils.js';

console.log(add(2, 3));        // 5
console.log(subtract(5, 3));   // 2
console.log(pi);               // 3.14159

 

๊ธฐ๋Šฅ๋งŒ ๋‚ด๋ณด๋‚ด๊ณ  ๊ฐ€์ ธ์˜ค๊ธฐ

default - ๋ชจ๋“ˆ์—์„œ ํ•˜๋‚˜์˜ ๊ธฐ๋Šฅํ•œ ๋‚ด๋ณด๋‚ด๊ธฐ

1. ๊ธฐ๋ณธ ๋‚ด๋ณด๋‚ด๊ธฐ

[ StringUtils.js ]

// ๊ธฐ๋ณธ ๋‚ด๋ณด๋‚ด๊ธฐ (default export)
export default function capitalize(str) {
  return str.charAt(0).toUpperCase() + str.slice(1);
}

 

2. ๊ธฐ๋ณธ ๊ฐ€์ ธ์˜ค๊ธฐ

[ app.js ]

// ๊ธฐ๋ณธ ๋‚ด๋ณด๋‚ด๊ธฐ๋œ ํ•จ์ˆ˜๋ฅผ ๊ธฐ๋ณธ ๊ฐ€์ ธ์˜ค๊ธฐ๋กœ ๋ถˆ๋Ÿฌ์˜ต๋‹ˆ๋‹ค.
// ํŒŒ์ผ ๋‚ด ๊ธฐ๋ณธ ๋‚ด๋ณด๋‚ด๊ธฐ๋œ ์š”์†Œ๊ฐ€ ํ•˜๋‚˜์ด๋ฏ€๋กœ, ๊ด„ํ˜ธ ์—†์ด ์ด๋ฆ„์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
import capitalize from './StringUtils.js';

console.log(capitalize("hello")); // "Hello"

 

๋ชจ๋“ˆ์˜ ์žฅ์ 

1. ๋ช…ํ™•ํ•œ ์˜์กด์„ฑ ์„ ์–ธ

๊ฐ ๋ชจ๋“ˆ์ด ์–ด๋–ค ๋‹ค๋ฅธ ๋ชจ๋“ˆ์— ์˜์กดํ•˜๋Š” ์ง€ ํŒŒ์ผ์˜ ์ตœ์ƒ๋‹จ์— ์„ ์–ธํ•œ๋‹ค.

2. ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๊ด€๋ฆฌ

์ „์—ญ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ์˜ค์—ผ์‹œํ‚ค์ง€ ์•Š๊ณ  ํ•„์š”ํ•œ ์‹ฌ๋ฒ„๋“ค๋งŒ ๋ช…์‹œ์ ์œผ๋กœ ๋ถˆ๋Ÿฌ์™€ ์‚ฌ์šฉํ•œ๋‹ค.

3. ์žฌ์‚ฌ์šฉ์„ฑ

๋ชจ๋“ˆ์€ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๊ฒŒ ์„ค๊ณ„๋˜์–ด, ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ์—์„œ๋„ ๋™์ผํ•œ ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

๋ฐ˜์‘ํ˜•