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

Tech Log ๐Ÿ› ๏ธ

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ธฐ์ดˆ - 1 ๋ณธ๋ฌธ

์ž๋ฐ” ์Šคํฌ๋ฆฝํŠธ

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ธฐ์ดˆ - 1

sehaan 2023. 4. 17. 22:15

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ์˜ ์œ„์น˜

 

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ํฌ๊ฒŒ 4๊ฐ€์ง€ ์œ„์น˜์— ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.

1.  HTML ํƒœ๊ทธ์˜ ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ ์†์„ฑ์— ์ž‘์„ฑ

     ex)

onclick = "this.src='banana.png'"
onmouseover = "this.src='banana.png'"

2. <script></script> ํƒœ๊ทธ์— ์ž‘์„ฑ

     - ์›น ํŽ˜์ด์ง€ ๋‚ด ์—ฌ๋Ÿฌ๋ฒˆ ์‚ฝ์ž…ํ•  ์ˆ˜ ์žˆ๋‹ค.

     ex)

<script> 
    function over(obj) { obj.src="media/banana.png"; } 
    function out(obj) { obj.src="media/apple.png"; } 
</script>

3. ๋ณ„๋„์˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ์— ์ž‘์„ฑ

    - ์ฝ”๋“œ๋ฅผ ์ค‘๋ณตํ•ด์„œ ์ž‘์„ฑํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค.

ex)

<script src=“ํŒŒ์ผ์ด๋ฆ„.js”>
// html5 ๋ถ€ํ„ฐ ์ฝ”๋“œ ์ถ”๊ฐ€ ์ž‘์„ฑx
</script>

4. URL ๋ถ€๋ถ„์— ์ž‘์„ฑ

 

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ HTML ์ฝ˜ํ…์ธ  ์ถœ๋ ฅ

1. document.write()

    - ๋ธŒ๋ผ์šฐ์ € ์œˆ๋„์šฐ์— ๋ฐ”๋กœ ์ถœ๋ ฅ

    ex)

    document.write("hello world");

2. document.writeln()

    - ๋นˆ์นธ ์ถœ๋ ฅ (๊ฐœํ–‰ ๋ฌธ์ž X)

 

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋‹ค์ด์–ผ๋กœ๊ทธ

1. ํ”„๋กฌํ”„ํŠธ ๋‹ค์ด์–ผ๋กœ๊ทธ

    - ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ๋ฆฌํ„ด(๋ฌด์กฐ๊ฑด ๋ฌธ์ž์—ด๋กœ ๋ฐ›์Œ)

2. ํ™•์ธ ๋‹ค์ด์–ผ๋กœ๊ทธ

    - ๋ฉ”์„ธ์ง€๋ฅผ ์ถœ๋ ฅํ•˜๊ณ  ํ™•์ธ ์ทจ์†Œ(true/false)๊ฐ€ ์žˆ๋Š” ๋‹ค์ด์–ผ๋กœ๊ทธ ์ถœ๋ ฅ

3. ๊ฒฝ๊ณ  ๋‹ค์ด์–ผ๋กœ๊ทธ

    - ๋ฉ”์„ธ์ง€์™€ ํ™•์ธ๋ฒ„ํŠผ์ด ์žˆ๋Š” ๋‹ค์ด์–ผ๋กœ๊ทธ ์ถœ๋ ฅ

 

์ž๋ฐ” ์Šคํฌ๋ฆฝํŠธ ๋ณ€์ˆ˜ ์ข…๋ฅ˜

- ์ž๋ฐ” ์Šคํฌ๋ฆฝํŠธ์—๋Š” ๋ณ€์ˆ˜ ํƒ€์ž…์ด ์—†์Œ

- ๋ณ€์ˆ˜์— ์ €์žฅ๋˜๋Š” ๊ฐ’์— ๋Œ€ํ•œ ์ œ์•ฝ์ด ์—†์Œ

 

1. var    - ๋ณ€์ˆ˜ ์ค‘๋ณต ์„ ์–ธ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. (๋ฌธ์ œ์ )2. let    - ๋ณ€์ˆ˜ ์ค‘๋ณต ์„ ์–ธ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค. (var์˜ ๋ฌธ์ œ์  ๋ณด์™„)3. const    - ํ•œ๋ฒˆ ์ •ํ•ด์ง„ ์ƒ์ˆ˜๋Š” ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋‹ค.

 

๋ณ€์ˆ˜์˜ ์‚ฌ์šฉ ๋ฒ”์œ„(scope)์™€ ์ƒ๋ช…(life)

๋ณ€์ˆ˜ ์ข…๋ฅ˜ ์„ ์–ธ
์ „์—ญ ๋ณ€์ˆ˜ ํ•จ์ˆ˜ ๋ฐ–์—์„œ ์„ ์–ธ ํ˜น์€ var/let ํ‚ค์›Œ๋“œ ์—†์ด ์•„๋ฌด ๊ณณ์—์„œ๋‚˜ ์„ ์–ธ
์ง€์—ญ ๋ณ€์ˆ˜ ํ•จ์ˆ˜ ๋‚ด์— let์œผ๋กœ ์„ ์–ธ
๋ธ”๋ก ๋ณ€์ˆ˜ let์œผ๋กœ if, while, for ๋“ฑ ๋ธ”๋ก ๋‚ด์— ์„ ์–ธ

*var๋Š” ํ•จ์ˆ˜ ์™ธ๋ถ€์—์„œ ์„ ์–ธํ•˜๋Š” ์ „์—ญ ๋ณ€์ˆ˜๊ฐ€ ๋œ๋‹ค.* ์ „์—ญ๋ณ€์ˆ˜์™€ ์ง€์—ญ๋ณ€์ˆ˜์˜ ์ด๋ฆ„์ด ๊ฐ™์„ ๋•Œ ์ „์—ญ๋ณ€์ˆ˜์— ์ ‘๊ทผํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด , this ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

 

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ์ฒด

- ์—ฌ๋Ÿฌ๊ฐœ์˜ ํ”„๋กœํผํ‹ฐ์™€ ๋ฉ”์†Œ๋“œ๋กœ ๊ตฌ์„ฑ๋˜์žˆ๋‹ค.

ํ”„๋กœํผํ‹ฐ : ๊ฐ์ฒด์˜ ๊ณ ์œ ํ•œ ์†์„ฑ(๋ณ€์ˆ˜)

๋ฉ”์†Œ๋“œ : ํ•จ์ˆ˜

 

๊ฐ์ฒด์˜ ์ข…๋ฅ˜

1. ์ฝ”์–ด ๊ฐ์ฒด

    - ๊ธฐ๋ณธ ๊ฐ์ฒด๋กœ ํ‘œ์ค€ ๊ฐ์ฒด 

    - ์–ด๋””์„œ๋‚˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

2. HTML DOM ๊ฐ์ฒด

     - HTML ํƒœ๊ทธ๋“ค์„ ๊ฐ์ฒดํ™” ํ•จ์œผ๋กœ์จ ๋ฌธ์„œ์˜ ๋‚ด์šฉ๊ณผ ๋ชจ์–‘์„ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋‹ค.

3. ๋ธŒ๋ผ์šฐ์ € ๊ฐ์ฒด

     - ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์ œ์–ดํ•œ๋‹ค.

 

์‚ฌ์šฉ์ž ๊ฐ์ฒด ๋งŒ๋“ค๊ธฐ

1. ์ง์ ‘ ๊ฐ์ฒด ๋งŒ๋“ค๊ธฐ

     1-1.  new Object();

let account = new Object();
account.owner = "ํ™ฉ๊ธฐํƒœ"; // ๊ณ„์ขŒ ์ฃผ์ธ ํ”„๋กœํผํ‹ฐ ์ƒ์„ฑ ๋ฐ ์ดˆ๊ธฐํ™”
account.code = "111"; // ์ฝ”๋“œ ํ”„๋กœํผํ‹ฐ ์ƒ์„ฑ ๋ฐ ์ดˆ๊ธฐํ™”
account.balance = 35000; // ์ž”์•ก ํ”„๋กœํผํ‹ฐ ์ƒ์„ฑ ๋ฐ ์ดˆ๊ธฐํ™”
account.inquiry = inquiry; // ๋ฉ”์†Œ๋“œ ์ž‘์„ฑ
account.deposit = deposit; // ๋ฉ”์†Œ๋“œ ์ž‘์„ฑ
account.withdraw = withdraw; // ๋ฉ”์†Œ๋“œ ์ž‘์„ฑ

     1-2. ๋ฆฌํ„ฐ๋Ÿด ํ‘œ๊ธฐ๋ฒ• - ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•œ๋‹ค.

let account = {
// ํ”„๋กœํผํ‹ฐ ์ƒ์„ฑ ๋ฐ ์ดˆ๊ธฐํ™”
owner : "ํ™ฉ๊ธฐํƒœ", // ๊ณ„์ขŒ ์ฃผ์ธ ํ”„๋กœํผํ‹ฐ ์ถ”๊ฐ€
code : "111", // ๊ณ„์ขŒ ์ฝ”๋“œ ํ”„๋กœํผํ‹ฐ ์ถ”๊ฐ€
balance : 35000, // ์ž”์•ก ํ”„๋กœํผํ‹ฐ ์ถ”๊ฐ€
// ๋ฉ”์†Œ๋“œ ์ž‘์„ฑ
inquiry : function () { return this.balance; }, // ์ž”๊ธˆ ์กฐํšŒ
deposit : function(money) { this.balance += money; }, // ์ €๊ธˆ. money ๋งŒํผ ์ €๊ธˆ
withdraw : function (money) { // ์˜ˆ๊ธˆ ์ธ์ถœ, money๋Š” ์ธ์ถœํ•˜๊ณ ์ž ํ•˜๋Š” ์•ก์ˆ˜
// money๊ฐ€ balance๋ณด๋‹ค ์ž‘๋‹ค๊ณ  ๊ฐ€์ •
this.balance -= money;
return money;
}
};

2. ํ”„๋กœํ† ํƒ€์ž…์„ ๋งŒ๋“ค๊ณ  ๊ฐ์ฒด ์ƒ์„ฑ

     - ํ”„๋กœํ†  ํƒ€์ž… : ๊ฐ์ฒด ๋ชจ์–‘์„ ๊ฐ€์ง„ ํ‹€

function Student(name, score) {
this.univ = "ํ•œ๊ตญ๋Œ€ํ•™"; // this.univ์„ ์ด์šฉํ•˜์—ฌ univ ํ”„๋กœํผํ‹ฐ ์ž‘์„ฑ
this.name = name; // this.name์„ ์ด์šฉํ•˜์—ฌ name ํ”„๋กœํผํ‹ฐ ์ž‘์„ฑ
this.score = score; // this.score๋ฅผ ์ด์šฉํ•˜์—ฌ score ํ”„๋กœํผํ‹ฐ ์ž‘์„ฑ
this.getGrade = function () { // getGrade() ๋ฉ”์†Œ๋“œ ์ž‘์„ฑ
if(this.score > 80) return "A";
else if(this.score > 60) return "B";
else return "F";
}
}
let kitae = new Student("ํ™ฉ๊ธฐํƒœ", 75); // Student ๊ฐ์ฒด ์ƒ์„ฑ
let jaemoon = new Student("์ด์žฌ๋ฌธ", 93); // Student ๊ฐ์ฒด ์ƒ์„ฑ
document.write(kitae.univ + ", " + kitae.name + "์˜ ํ•™์ ์€ " + kitae.getGrade() + "<br>");
document.write(jaemoon.univ + ", " + jaemoon.name + "์˜ ํ•™์ ์€ " + jaemoon.getGrade() + "<br>")