ํฐ์คํ ๋ฆฌ ๋ทฐ
์ฃผ์ด์ง ๋ฌธ์
๋ฐฐ๋ฌํ ๊ณ์ฐ๊ธฐ ๋ง๋ค๊ธฐ

๋ฒํผ์ด ๋๋ ธ์ ๋ ์ ๋ ฅํ ์์๊ฐ์ ๋ฐ๋ฅธ ๋ฐฐ๋ฌ๋น๋ฅผ ์ถ๋ ฅํด์ผ ํ๋ค.
๐์ธํ html
<!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>
<input type="number" placeholder="์์๊ฐ ์ฌ๊ธฐ๋ค ๋ฃ์ผ์ธ์" class="food-price" />
<button class="btn">๋ฐฐ๋ฌํ ๊ฒ์!</button>
<div>๊ฒฐ๊ณผ: <span class="result"></span>์</div>
<script src="script.js"></script>
</body>
</html>
๋ฌธ์ ํ์ด ๊ณผ์
๐์๊ฐํ ๋ก์ง
1. ๋ฒํผ ํด๋ฆญ ์ ์ด๋ฒคํธ ์ฃผ๊ธฐ
1-1. ํด๋ฆญ ์ ๊ณ์ฐ๊ธฐ ๊ฒฐ๊ณผ๊ฐ์ result์ ๋ํ๋ด๊ธฐ
2. ๊ณ์ฐ๊ธฐ ํจ์ ์คํํ๊ธฐ
2-1. ์์๊ฐ(foodpr.value)์ ๋ฐ๋ผ ๋ฐฐ๋ฌ๋น ๊ฑฐ๋ฅด๊ธฐ
๐๊ตฌํํ ์ฝ๋
const searchBtn = document.querySelector(".btn");
const result = document.querySelector(".result");
const foodpr = document.querySelector(".food-price");
searchBtn.addEventListener("click", function () {});
function tipcalculate() {
if (foodpr.value < 10000) {
result.innerHTML = 3000;
} else if (foodpr.value < 30000) {
result.innerHTML = 2000;
} else if (foodpr.value < 50000) {
result.value.innerHTML = 1000;
} else {
result.innerHTML = 0;
}
return;
}
console.log(tipcalculate(foodpr.value));
๋ฌธ์ ์ํฉ
๊ณ์ฐ๊ธฐ ํจ์ ๋ก์ง ๊ตฌ์ฑ๊ณผ์ ์ค ์ด๋ ค์์ ๋๊ผ๋ค.
โ์ด๋ค ๊ฑธ returnํด์ผํ ์ง
โconsole.log์ ์ด๋ค ๋ณ์๋ฅผ ๋ฃ์ด ์ฐ์ด๋ด์ผ ํ๋์ง
โaddEvenstListener์์๋ ์ด๋ค ํจ์๋ฅผ ์คํํด์ผ ํ๋์ง
์ฌ๋ฌ๊ฐ์ง๋ฅผ ์๋ํ๋ค๊ฐ ๋จธ๋ฆฌ์์์ ๊ผฌ์ฌ๋ฒ๋ ธ๋ค.
...
๋ฌธ์ ํด๊ฒฐ ๊ณผ์
ํจ์์์ ์ค์ํ ๊ฑด "๊ธฐ๋ฅ์ ๋ช ํํ ๋ถ๋ฆฌ"์ด๋ค.
์ฒ์์ addEventListener์ ํจ์์์ if๋ฌธ์ ๋ฐ๋ผ ๊ฐ๊ฒฉ์ ๋ถ๋ฆฌํ์๋๋ฐ,
์๊ฐํด๋ณด๋ ํด๋ฆญํ ๋ ๋ฐ์ํ๋ ์ด๋ฒคํธ๋ ๋จ์ง ๊ฒฐ๊ณผ๋ฅผ ๋ํ๋ด๋ ๊ฒ๋ฟ์ด์๋ค.
๋ฐ๋ผ์ tipcalculate() ๋ผ๋ ํจ์๋ฅผ ๋ฐ๋ก ์ง์ ํ์๋ค.
๐ ๋ ํจ์์ ์ฐ๊ฒฐ
๊ทธ๋ผ ํด๋ฆญ์ด๋ฒคํธ์ ๊ณ์ฐ๊ธฐ ํจ์, ์ด ๋์ ์ด๋ป๊ฒ ์ฐ๊ฒฐํ๋๋?
๊ทธ๋ฅ ๋ฃ์ด์ฃผ๋ฉด ๋๋ค!
searchBtn.addEventListener("click", function () {
tipcalculate();
});
function tipcalculate() {
if (foodpr.value < 10000) {
result.innerHTML = 3000;
} else if (foodpr.value < 30000) {
result.innerHTML = 2000;
} else if (foodpr.value < 50000) {
result.value.innerHTML = 1000;
} else {
result.innerHTML = 0;
}
}
๊ฒฐ๊ณผ ๋์ถ ์๋ 1. result.innerHTML ์ด๋ํ๊ธฐ
์ด๋ฒคํธ๋ฆฌ์ค๋์ ํจ์๋ฅผ ์ฐ๊ฒฐํ์ผ๋ ์๋์ ๊ฐ์ด ๋ณํํด๋ณด์์ง๋ง ๊ฒฐ๊ณผ๊ฐ ๋์ค์ง ์๋๋ค.
searchBtn.addEventListener("click", function () {
result.innerHTML = tipcalculate();
});
function tipcalculate() {
if (foodpr.value < 10000) {
3000;
} else if (foodpr.value < 30000) {
2000;
} else if (foodpr.value < 50000) {
1000;
} else {
0;
}
}

์ต์ข ํด๊ฒฐ
๐ ํจ์ ๋ฐ์์ ๊ฐ์ ์ฌ์ฉํ๋ ค๋ฉด return์ ํด์ผ ํ๋ค
const searchBtn = document.querySelector(".btn");
const result = document.querySelector(".result");
const foodpr = document.querySelector(".food-price");
searchBtn.addEventListener("click", function () {
result.innerHTML = tipcalculate();
});
function tipcalculate() {
if (foodpr.value < 10000) {
return 3000;
} else if (foodpr.value < 30000) {
return 2000;
} else if (foodpr.value < 50000) {
return 1000;
} else {
return 0;
}
}

๊ฐ์ด ์ ์์ ์ผ๋ก ๋์ค๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
'Language > JavaScript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| ๊ฐํน๊ฐ๋ค ํท๊ฐ๋ฆด ์ ์๋ ๋ฌธ์ ๋ค ! - ๋ฌธ์ ์ํ ์ค๋ต ํ์ด (1) | 2025.01.16 |
|---|---|
| [๐ฆ] ์๋~ ์ง๋๋ฒจ๋ก ์๋ ค๋๋ฆด๊ฒ์! (1) - promise (0) | 2025.01.16 |
| [๐ฆ] ๋ชจ๋ฌ์ฐฝ ์ฌ๋ฌ ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํํ๊ธฐ (0) | 2025.01.15 |
| ๊ทธ๋, id๋ ๊ฐ์ ธ์์ด. ์ด์ ์ด๋กํ ๊ฑด๋ฐ?! - find() (0) | 2025.01.15 |
| [๐ฆ] text ์ผํ์ ๋น๊ต - textContent / innerText / innerHTML (0) | 2025.01.12 |