2023. 5. 14. 20:50ใStudy_Develop/ํฌ์ค์ฝ X ์ฝ๋ฉ์จ ๋ถํธ์บ ํ
[ํฌ์ค์ฝ X ์ฝ๋ฉ์จ ํ์คํ ์น๊ฐ๋ฐ์ ๋ถํธ์บ ํ 7๊ธฐ]
2์ฃผ์ฐจ ํ๊ณ ๋ก 2๋๋ฒ์งธ !
๋ณธ ๊ธ์์๋ ์ค์ต, ํด์ฆ๋ก ๋์จ ๋ฌธ์ ๋ฅผ
ํ์ดํด๋ณด๋๋ก ํ๊ฒ ๋ค..
๊ฐ์ฌ๋์ด ์๋ ค์ฃผ์ ์ฝ๋๋
์ผ๋ถ ์ฐธ๊ณ ํด์
์์ฑํ ํ์ด ์ฝ๋๋ค ์ด๋ค..
๊ทธ๋ฆฌ๊ณ ํ๊ณ ์ ์์ ์ ์ฉํ ํ๋ฌ๊ทธ์ธ ์๊ฐ!!
๊ทธ๋์ Visual Studio Code ๋ฅผ ์ฌ์ฉํ๋ฉฐ
์ฝ๋ ์ ๋ ฌํ ๋
๋จ์ถํค ctrl + k + f๋ฅผ ์ฌ์ฉํ๋๋ฐ
์์ธ์ง ๋ชจ๋ฅด๊ฒ ์ด๊ฒ ์ ์๋จน์ ๋๊ฐ ์์๋ค.
๊ทธ๋ฌ๋ ๋์ค
์ข์ ํ๋ฌ๊ทธ์ธ ๋ฐ๊ฒฌ!
๋จ์ถํค ๊น๋จน์๊น๋ด
์ ์ฅํด๋๋ ์ฉ์ด๊ธด ํ๋ค ใ ใ
Visual Studio Code์์ ์๋์ค๋ง์ถค ํ๋ ๋ฐฉ๋ฒ !
๋๋ ๊ทธ ํ ์์ญ์ Ctrl + Shift +B ๋จ์ถํค ์ฌ์ฉ!!
โ๋ฌธ์ 1 . ์ซ์ Up and Down ๊ฒ์โ
let answer = Math.floor(Math.random() * 10 + 1);
//or Math.floor(Math.random() * 11) 11๋ฏธ๋ง์ ์ซ์๊ฐ ๋์ค๊ธฐ๋๋ฌธ์ 10๊น์ง๋์ต๋๋ค.
console.log(answer);
//๋ฌดํ ๋ฐ๋ณต์ ์ด์ฉํ์ฌ ๊ฒ์์ ์งํํฉ๋๋ค.
//๊ผญ ๋ฌดํ ๋ฐ๋ณต์ด ์ข
๋ฃ๋ ์กฐ๊ฑด๋ฌธ์ ๋ฃ์ด์ค์ผํฉ๋๋ค.
while (1) {
let guessValue = prompt("UP and DOWN ๊ฒ์์ ์์ํฉ๋๋ค!");
if (guessValue == "q" || guessValue == "๊ทธ๋ง") {
alert("ํฌ๊ธฐํ์
จ์ต๋๋ค.");
break;
} else if (Number(guessValue) === answer) {
alert(`${answer}!! ์ ๋ต์
๋๋ค >_<`);
break;
} else if (Number(guessValue) > answer) {
alert("Down");
} else if (Number(guessValue) < answer) {
alert("Up");
}
//if๋ฌธ์ ๋ฌดํ๋ฐ๋ณตํ๋ฉด์ Down์ด ๋์ค๊ฑฐ๋ Up์ด ๋์ค๊ฒ ๋๋ฉด ์ข
๋ฃ๋์ง ์๊ณ ๋ฐ๋ณต๋ฌธ์ ๊ณ์์คํํฉ๋๋ค.
//์
๋ ฅ๋๊ฐ์ด ์ข
๋ฃ๊ฑฐ๋ ์ ๋ต์ ๋ง์ถ๊ฒ ๋๋ฉด break๋ฅผ ๊ฑธ์ด์ ๋ฌดํ๋ฐ๋ณต๋ฌธ์์ ๋น ์ ธ๋์ค๊ฒ ํ๋ฉด๋ฉ๋๋ค.
//break: ๋ฐ๋ณต๋ฌธ์ด๋ ์กฐ๊ฑด๋ฌธ์์ break๋ฅผ ๋ง๋๊ฒ ๋๋ฉด ํด๋น ์กฐ๊ฑด๋ฌธ์ด๋ ๋ฐ๋ณต๋ฌธ์ด ์ฆ์ ์ข
๋ฃ๋ฉ๋๋ค.
}
๋ด๊ฐ ํผ ํ์ด๋ ์๋๊ณ ,
๊ฐ์ฌ๋์ด ์ฌ๋ ค์ฃผ์ ํ์ด ์ฝ๋์ด๋ค.
์ถ๊ฐ์ ์ผ๋ก ์์๋๋ฉด ์ข์ ๊ฒ!
โ ํ ํ๋ฆฟ ๋ฌธ์์ด
`${...}`
๊ธฐํธ๋ฅผ ์ฌ์ฉํ์ฌ ํํ์์ ๋ฃ์ผ๋ฉด,
ํํ์์ด ๋ฌธ์์ด ์์์ ๊ณ์ฐ๋๋ค.
console.log(`ํํ์ 273+52์ ๊ฐ์ ${273+52}์
๋๋ค..!`)
๊ฒฐ๊ณผ>
โ Javascript prompt()
prompt(๋ฉ์์ง ๋ฌธ์์ด, ๊ธฐ๋ณธ ์ ๋ ฅ ๋ฌธ์์ด)
let guessValue = prompt("UP and DOWN ๊ฒ์์ ์์ํฉ๋๋ค!", "์ซ์๋ฅผ ์
๋ ฅํ์ธ์");
โ๋ฌธ์ 2 . HTML ์์ ๋ด์ฉ ๋ณ๊ฒฝํ๊ธฐโ
<body>
<img src="../image/bigmouse.jpeg" alt="๋น
๋ง์ฐ์ค" id="img" style="width: 50px;">
<ul>
<li>์ด์ํ ๋ณํธ์ฌ ์ฐ์์ฐ</li>
<li>๋๋ผ๋ง</li>
<li>15์ธ ์ด์</li>
</ul>
<button onclick="imgJs()">js๋ฐ๊พธ๊ธฐ</button>
<button onclick="imgJquery()">jquery๋ฐ๊พธ๊ธฐ</button>
<script>
const img = document.querySelector('#img')
function imgJs() {
img.setAttribute('alt', '์ด์ํ์ฐ์์ฐ')
img.setAttribute('src', '../wooyoungwoo.jpg')
img.style = 'width:200px'
}
function imgJquery() {
$('#img').attr("src", "../wooyoungwoo.jpg");
$('#img').css('width', '200px')
}
</script>
</body>
โ๋ฌธ์ 2 . HTML ์์ ์์ฑ/์ถ๊ฐํ๊ธฐโ
ํ์ด 1. ํ๋์ฝ๋ฉํ๊ธฐ>
<article class="article-box" >
<img src="../image/icecrea1.png" class="img-box">
<h3 class="text-center">Top1</h3>
<div class="text-center">๋ด๊ฐ ์์ธ์ํ๋?!</div>
</article>
<article class="article-box">
<img src="../image/icecream2.png" class="img-box">
<h3 class="text-center" >Top2</h3>
<h3 class="text-center">์๋ง๋ ์ธ๊ณ์ธ</h3>
</article>
<article class="article-box">
<img src="../image/icecream3.png" class="img-box">
<h3 class="text-center" >Top3</h3>
<h3 class="text-center">๋ฏผํธ ์ด์ฝ๋ฆฟ ์นฉ</h3>
</article>
ํ์ด 2. js ์ด์ฉํ๊ธฐ>
const icecreams = [
'๋ด๊ฐ ์์ธ์ํ๋?!',
'์๋ง๋ ์ธ๊ณ์ธ',
'๋ฏผํธ ์ด์ฝ๋ฆฟ ์นฉ',
'๋ด์ ์น์ฆ์ผ์ดํฌ',
'์์ด์ค ์ด๋น์ฅ์์',
'์ด์ฝ๋ฆฟ ๋ฌด์ค',
'์ฒด๋ฆฌ์ฅฌ๋น๋ ',
'๋ฎค! ๋ ๋ด๊ฑฐ์ผ',
'์ค๋ ์ค ์ฟ ํค ์ค ํฌ๋ฆผ'
];
for(let i = 0; i < icecreams.length; i++) {
const article = document.createElement('article')
article.classList.add('article-box')
const img = document.createElement('img')
img.setAttribute('src', `../image/icecream${i + 1}.png`)
img.classList.add('img-box')
const h3 = document.createElement('h3')
h3.textContent = `Top${i+1}`
h3.classList.add('text-center')
const div = document.createElement('div')
div.textContent = icecreams[i]
div.classList.add('text-center')
const box = document.querySelector('.text-center')
box.append(article)
article.append(img, h3, div)
}
ํ์ด 3. jQuery ์ด์ฉ>
<h6 class="text-center">์ด๋ฌ์ ๋ง BEST9</h6><br/>
<section class="text-center"></section>
<script>
$(document).ready(function () {
const section = $('section');
const icecreams = [
'๋ด๊ฐ ์์ธ์ํ๋?!',
'์๋ง๋ ์ธ๊ณ์ธ',
'๋ฏผํธ ์ด์ฝ๋ฆฟ ์นฉ',
'๋ด์ ์น์ฆ์ผ์ดํฌ',
'์์ด์ค ์ด๋น์ฅ์์',
'์ด์ฝ๋ฆฟ ๋ฌด์ค',
'์ฒด๋ฆฌ์ฅฌ๋น๋ ',
'๋ฎค! ๋ ๋ด๊ฑฐ์ผ',
'์ค๋ ์ค ์ฟ ํค ์ค ํฌ๋ฆผ'
];
for (let i = 1; i < 10; i++) {
const article = $('<article></article').addClass('article-box');
const img = $('<img></img>')
.addClass('img-box')
.attr('src', `../image/icecream${i}.png`)
const h3 = $('<h3></h3>')
.addClass('text-center')
.text(`Top${i}`);
const div = $('<div></div>')
.addClass('text-center')
.text(icecreams[i - 1]);
article.append(img, h3, div)
section.append(article);
}
})
์ถ๊ฐ์ ์ผ๋ก ์์๋๋ฉด ์ข์ ๊ฒ!
โ append()์ appdendChild()์ ์ฐจ์ด?
- append ๋ฉ์๋๋ฅผ ํ์ฉํ๋ฉด ๋ ธ๋ ๊ฐ์ฒด (Node object)๋ DOMString(text)๋ฅผ ์ฌ์ฉํ ์ ์๋ค.
๋ํ ํ๋ฒ์ ์ฌ๋ฌ ๊ฐ์ ์์ ์์๋ฅผ ์ค์ ํ ์ ์๋ค.
- appendChild ๋ฉ์๋๋ append ๋ฉ์๋์๋ ๋ค๋ฅด๊ฒ ์ค์ง Node๊ฐ์ฒด๋ง ๋ฐ์ ์ ์์ต๋๋ค.
๊ฒ๋ค๊ฐ append ๋ ์ฌ๋ฌ๊ฐ์ ๋ ธ๋์ ๋ฌธ์๋ฅผ ์ถ๊ฐํ ์ ์๋ ๋ฐ๋ฉด์,
appendChild ๋ฉ์๋๋ ํ๋ฒ์ ์ค์ง ํ๋์ ๋ ธ๋๋ง
์ถ๊ฐํ ์ ์์ต๋๋ค.
์๋ ๋งํฌ ์ฐธ์กฐ!
https://webruden.tistory.com/634
[Javascript] append vs appendChild ์ฐจ์ด์ (์ด๊ฐ๋จ)
append์ appendChild ๋ฉ์๋๋ ๋ชจ๋ ๋ถ๋ชจ ๋ ธ๋์ ์์ ๋ ธ๋๋ฅผ ์ถ๊ฐํ๋ ๋ฉ์๋์ ๋๋ค. ํ์ง๋ง ๋ ๋ฉ์๋์๋ ๋ช ๊ฐ์ง ์ฐจ์ด์ ์ด ์กด์ฌํฉ๋๋ค. ์ด๋ฒ ํฌ์คํ ์์๋ ๋ ๋ฉ์๋์ ์ฐจ์ด์ ์ ๋ํด์ ์ฝ๊ณ ๊ฐ
webruden.tistory.com
โ๋ฌธ์ 3 . ๊ฐ๋จ ๊ณ์ฐ๊ธฐ ๋ง๋ค๊ธฐโ
<body>
<label for="value1">๊ฐ1: </label>
<input type="number" id="value1">
<label for="value2">๊ฐ2: </label>
<input type="number" id="value2">
<label for="calc">์ฐ์ฐ์: </label>
<input type="text" id="calc">
<button onClick="calc()">๊ณ์ฐ</button>
<button onClick="reset()">์ด๊ธฐํ</button>
<label for="result">๊ฒฐ๊ณผ: </label>
<input type="number" id="result" disabled/>
</body>
function calc(){
//ํ์
์ด ๋ฌธ์์ธ ์ซ์์ผ ๊ฒฝ์ฐ ํ๋ณํ์ + ๋ก ๊ฐ๋ฅํ๋ค.
//์ซ์๋ฅผ ๋ฌธ์๋ก ํ๋ณํํ ๋๋ ์ซ์ + ''
const val1=+document.getElementById('value1').value
const val2=+document.getElementById('value2').value
const calc=document.getElementById('calc').value
console.log(val1, val2, calc)
let result;
if (calc === '+') {
result = val1 + val2;
} else if (calc === '-') {
result = val1 - val2;
} else if (calc === '/') {
result = val1 / val2;
} else if (calc === '*') {
result = val1 * val2;
}else{
result='์ค๋ฅ๋ฐ์'
}
document.getElementById('result').value=result;
}
function reset() {
document.getElementById('val1').value = ''
document.getElementById('val2').value = ''
document.getElementById('calc').value = ''
document.getElementById('result').value = ''
}
์ถ๊ฐ์ ์ผ๋ก ์์๋๋ฉด ์ข์ ๊ฒ!
โ label ?
- label์ ํผ์ ์์์ ์ด๋ฆ ๋ถ์ด๋ ํ๊ทธ์ด๋ค.
- ์ฃผ์ ์์ฑ์ for ์ด๋ค. label ์ for์ ๊ฐ๊ณผ ์์์ id์ ๊ฐ์ด ๊ฐ์ผ๋ฉด ์ฐ๊ฒฐ๋๋ค.
- label์ ํด๋ฆญํ๋ฉด,์ฐ๊ฒฐ๋์์์ ์ ๋ ฅํ ์ ์๋๋ก ํ๊ฑฐ๋,
์ฒดํฌ๋ฅผ ํ๊ฑฐ๋,
์ฒดํฌ๋ฅผ ํด์ ํ๋ค.
โ input type?
- input ํ๊ทธ์ typ์ number๋ก ํ๋ฉด ์ซ์๋ง ์ ๋ ฅํ ์ ์๋ค.
- ์์๋ฅผ ์ ๋ ฅ๋ฐ๊ณ ์ถ๋ค๋ฉด, step์์ฑ์ ์ถ๊ฐํ๋ค.
์๋ฅผ ๋ค์ด, step์ ๊ฐ์ 0.01๋ก ํ๋ฉด ์์ ๋์งธ์๋ฆฌ ๊น์ง ์ ๋ ฅ ๊ฐ๋ฅํ๋ค.
https://www.codingfactory.net/13397
HTML / input / number / ์ซ์ ์ ๋ ฅํ๋ ์์
input type='number' input ํ๊ทธ์ type์ number๋ก ํ๋ฉด ์ซ์๋ง ์ ๋ ฅํ ์ ์๋ค. <!doctype html> <html lang='ko'> <head> <meta charset='utf-8'> <title>JavaScript</title> <style> * { font-family: Consolas, monospace; font-size: 24px; } </style>
www.codingfactory.net
โ๋ฌธ์ 4 . ๋ฐฉ๋ช ๋ก ๋ง๋ค๊ธฐโ
โ๋ฌธ์ 5 . ๋งค๊ฐ๋ณ์๋ก ๋ค์ด์จ ๊ฐ์ 3ํ ์ถ๋ ฅํ๊ธฐโ