์—ดํ•œ ๋ฒˆ์งธ ๋ฌธ์ œ: ๋ฐฐ์—ด ๋ฐ ํ•จ์ˆ˜๋ฅผ ํ™œ์šฉํ•œ ์žฅ๋ฐ”๊ตฌ๋‹ˆ ๊ณ„์‚ฐ๊ธฐ

2025. 10. 27. 17:14ยทw. Gemini

์š”๊ตฌ์‚ฌํ•ญ

  1. ๋ฐ์ดํ„ฐ ์ •์˜ (JS):
    • ๋‹ค์Œ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง„ ์ƒํ’ˆ ๊ฐ์ฒด ๋ฐฐ์—ด์„ JavaScript ์ฝ”๋“œ ๋‚ด์— ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฐฐ์—ด์„ cartItems ๋ณ€์ˆ˜์— ์ €์žฅํ•˜์„ธ์š”.
    • JavaScript
      const cartItems = [
          { id: 1, name: '๋…ธํŠธ๋ถ', price: 1200000, quantity: 1 },
          { id: 2, name: '๋ฌด์„  ๋งˆ์šฐ์Šค', price: 35000, quantity: 2 },
          { id: 3, name: '๋ชจ๋‹ˆํ„ฐ', price: 300000, quantity: 1 },
          { id: 4, name: 'ํ‚ค๋ณด๋“œ', price: 80000, quantity: 3 }
      ];
      
  2. ์ดํ•ฉ ๊ณ„์‚ฐ ํ•จ์ˆ˜ ๊ตฌํ˜„:
    • calculateTotal์ด๋ผ๋Š” ํ•จ์ˆ˜๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.
    • ์ด ํ•จ์ˆ˜๋Š” cartItems ๋ฐฐ์—ด์„ ์ธ์ˆ˜๋กœ ๋ฐ›์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.
    • ํ•จ์ˆ˜๋Š” ๋ฐฐ์—ด์„ ์ˆœํšŒํ•˜๋ฉฐ **๊ฐ ์ƒํ’ˆ์˜ ๊ธˆ์•ก (price * quantity)**์„ ๊ณ„์‚ฐํ•˜๊ณ , ์ด ๊ธˆ์•ก๋“ค์„ ๋ชจ๋‘ ๋”ํ•œ ์ตœ์ข… ํ•ฉ๊ณ„ ๊ธˆ์•ก์„ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. (ํžŒํŠธ: Array.prototype.reduce() ์‚ฌ์šฉ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.)
  3. ์ด ๊ฐœ์ˆ˜ ๊ณ„์‚ฐ ํ•จ์ˆ˜ ๊ตฌํ˜„:
    • calculateTotalQuantity๋ผ๋Š” ํ•จ์ˆ˜๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.
    • ์ด ํ•จ์ˆ˜๋Š” ๋ฐฐ์—ด์„ ์ˆœํšŒํ•˜๋ฉฐ ๋ชจ๋“  ์ƒํ’ˆ์˜ quantity๋ฅผ ๋”ํ•œ ์ด ๊ฐœ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  4. HTML ๋ฐ ์ถœ๋ ฅ:
    • <body> ์•ˆ์— <h2>์™€ <div id="result">๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
    • JavaScript๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‘ ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•˜๊ณ , ๊ทธ ๊ฒฐ๊ณผ๋ฅผ result ์š”์†Œ ์•ˆ์— ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.
      • ์˜ˆ: "์ด ์ƒํ’ˆ ๊ธˆ์•ก: 1,695,000์› (์ด ์ˆ˜๋Ÿ‰: 7๊ฐœ)"

 

๋”๋ณด๊ธฐ
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h2>๋ฐฐ์—ด ๋ฐ ํ•จ์ˆ˜๋ฅผ ํ™œ์šฉํ•œ ์žฅ๋ฐ”๊ตฌ๋‹ˆ ๊ณ„์‚ฐ๊ธฐ</h2>
    <div id="result"></div>

    <script>
        const cartItems = [
            {id: 1, name: '๋…ธํŠธ๋ถ', price: 1200000, quantity: 1},
            {id: 2, name: '๋ฌด์„  ๋งˆ์šฐ์Šค', price: 35000, quantity: 2},
            {id: 3, name: '๋ชจ๋‹ˆํ„ฐ', price: 300000, quantity: 1},
            {id: 4, name: 'ํ‚ค๋ณด๋“œ', price: 80000, quantity: 3},
            {id: 5, name: '๋งˆ์šฐ์Šค ํŒจ๋“œ', price: 10000, quantity: 2},
        ];

        document.addEventListener("DOMContentLoaded", () => {
            const resultElement = document.getElementById('result');

            function calculateTotal(items) {
                const total = items.reduce((accumulator, item) => {
                    const itemTotal = item.price * item.quantity;
                    return accumulator + itemTotal;
                }, 0);

                return total;
            }

            function calculateTotalQuantity(items) {
                const totalQuantity = items.reduce((accumulator, item) => {
                    return accumulator + item.quantity;
                }, 0);
                
                return totalQuantity;
            }

            const finalTotal = calculateTotal(cartItems);
            const finalQuantity = calculateTotalQuantity(cartItems);

            const formattedTotal = finalTotal.toLocaleString('ko-KR');

            const resultText = `์ด ์ƒํ’ˆ ๊ธˆ์•ก : ${formattedTotal}์› (์ด ์ˆ˜๋Ÿ‰ : ${finalQuantity}๊ฐœ)`;

            resultElement.textContent = resultText;
        })
    </script>
</body>
</html>
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋™์ผ์กฐ๊ฑด (์ƒˆ์ฐฝ์—ด๋ฆผ)

'w. Gemini' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

์—ด์„ธ ๋ฒˆ์งธ ๋ฌธ์ œ: Promise๋ฅผ ์‚ฌ์šฉํ•œ ๋น„๋™๊ธฐ ์ฒด์ด๋‹ (JS ๊ฐœ๋… ์‹ฌํ™” 2)  (0) 2025.10.31
์—ด๋‘ ๋ฒˆ์งธ ๋ฌธ์ œ: ๋น„๋™๊ธฐ ์ž‘์—… ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๋ฐ ์ฝœ๋ฐฑ ํ•จ์ˆ˜ ์ดํ•ด  (0) 2025.10.27
์—ด ๋ฒˆ์งธ ๋ฌธ์ œ: To-Do List ์•ฑ ๋งŒ๋“ค๊ธฐ  (0) 2025.10.27
์•„ํ™‰ ๋ฒˆ์งธ ๋ฌธ์ œ: Light/Dark ๋ชจ๋“œ ํ† ๊ธ€ ๋ฒ„ํŠผ ๋งŒ๋“ค๊ธฐ  (0) 2025.10.27
์—ฌ๋Ÿ ๋ฒˆ์งธ ๋ฌธ์ œ: Grid Area๋ฅผ ํ™œ์šฉํ•œ ๋ธ”๋กœ๊ทธ ๋ ˆ์ด์•„์›ƒ ๋งŒ๋“ค๊ธฐ  (0) 2025.10.27
'w. Gemini' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • ์—ด์„ธ ๋ฒˆ์งธ ๋ฌธ์ œ: Promise๋ฅผ ์‚ฌ์šฉํ•œ ๋น„๋™๊ธฐ ์ฒด์ด๋‹ (JS ๊ฐœ๋… ์‹ฌํ™” 2)
  • ์—ด๋‘ ๋ฒˆ์งธ ๋ฌธ์ œ: ๋น„๋™๊ธฐ ์ž‘์—… ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๋ฐ ์ฝœ๋ฐฑ ํ•จ์ˆ˜ ์ดํ•ด
  • ์—ด ๋ฒˆ์งธ ๋ฌธ์ œ: To-Do List ์•ฑ ๋งŒ๋“ค๊ธฐ
  • ์•„ํ™‰ ๋ฒˆ์งธ ๋ฌธ์ œ: Light/Dark ๋ชจ๋“œ ํ† ๊ธ€ ๋ฒ„ํŠผ ๋งŒ๋“ค๊ธฐ
๋น™๊ณ ๊ตฌ๋ง›ํƒ•
๋น™๊ณ ๊ตฌ๋ง›ํƒ•
  • ๋น™๊ณ ๊ตฌ๋ง›ํƒ•
    ๐•Ž๐”ผ๐”น ๐”ธ๐•ƒ๐•ƒ ๐•ƒ๐•†๐”พ
    ๋น™๊ณ ๊ตฌ๋ง›ํƒ•
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ๋ฐฉ๋ช…๋ก
    • ๊ธ€์“ฐ๊ธฐ
    • ๊ด€๋ฆฌ์ž
    • ์ „์ฒด๋ณด๊ธฐ N
      • w. Gemini N
      • w. GPTs
      • Before. 2021
  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    footer ๊ณ ์ •
    ie9 ์„  ๋ฒ„๊ทธ
    ie collapse ๋ฒ„๊ทธ
    input fileํƒœ๊ทธ ๋ฐ”๊พธ๊ธฐ
    box-shadow
    min-height:100%
    border-collapse ์˜ค๋ฅ˜
    footer ํ•˜๋‹จ์— ๊ณ ์ •
    css3
  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.5
๋น™๊ณ ๊ตฌ๋ง›ํƒ•
์—ดํ•œ ๋ฒˆ์งธ ๋ฌธ์ œ: ๋ฐฐ์—ด ๋ฐ ํ•จ์ˆ˜๋ฅผ ํ™œ์šฉํ•œ ์žฅ๋ฐ”๊ตฌ๋‹ˆ ๊ณ„์‚ฐ๊ธฐ
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”