๐ฅ JavaScript
- ํ๋ก๊ทธ๋๋ฐ ์ธ์ด
- ๋ธ๋ผ์ฐ์ ๊ฐ ์์๋ค์ ์ ์๋ ์ธ์ด
- ๋์ ์ผ๋ก ์ฌ์ฉ์์ ์ํธ์์ฉํ ์ ์๋๋ก ํ๋ ์ธ์ด
- HTMLํ์ผ <head> ~ </head> ํ๊ทธ์์ <script> ~ </script> ํ์ค๋ก ๊ณต๊ฐ์ ๋ง๋ค์ด ์์ฑ
- ํฌ๋กฌ ๊ฐ๋ฐ์ ๋๊ตฌ ์ฝ์์ฐฝ(๋ง์ฐ์ค ์ค๋ฅธ์ชฝ ํด๋ฆญ โ ๊ฒ์ฌ โ console/ ์๋์ฐ F12) ์ ์ด์ฉํ์ฌ ๋์ด๋์ ํ์ด์ง์ ๋น ๋ฅด๊ฒ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ํ ์คํธํ ์ ์๋ค.
- console.log(๋ณ์) : ์ฝ์ ์ฐฝ์ ๊ดํธ ์์ ๊ฐ์ ์ถ๋ ฅํด์ค
- primitive type์ ๊ฐ์ ์ ์ธํ ๋ชจ๋ ๊ฒ๋ค์ด ๊ฐ์ฒด๋ก ์ด๋ฃจ์ด์ง ๊ฐ์ฒด ๊ธฐ๋ฐ ์คํฌ๋ฆฝํธ ์ธ์ด์ด๋ค.
๐ฅ Data types
์๋ฐ์คํฌ๋ฆฝํธ๋ ์ธํฐํ๋ฆฌํฐ๊ฐ ์์์ ๋ณ์์ ํ์ ์ ํ์ ํ๊ณ ๊ฐ์ ์ ์ฅํด์ ๋ณ์์ ํ์ ์ ๋ฐ๋ก ์ฐ์ง ์๋๋ค.
primitive values ์ object ๋ก ๋๋ ์ ์๋ค.
๐ ๋ณ์ ์ ์ธ
- var : ๋ณ์ ์ฌ์ ์ธ, ์ฌํ ๋น ๊ฐ๋ฅ
- let : ๋ณ์ ์ฌ์ ์ธ ๋ถ๊ฐ๋ฅ, ์ฌํ ๋น ๊ฐ๋ฅ
- const : ๋ณ์ ์ฌ์ ์ธ, ์ฌํ ๋น ๋ชจ๋ ๋ถ๊ฐ๋ฅ
- ๋ณ์ ์ ์ธ์๋ const๋ฅผ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ์ฉํ๊ณ , ์ฌํ ๋น์ด ํ์ํ ๊ฒฝ์ฐ์๋ง let์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข๋ค.
๐ Primitive values
Boolean : True, Flase
Null: null
Undefined: ์ ์๋์ง ์์ ๊ฐ
Number: ์ซ์ํ (์ ์, ๋ถ๋ ์์์ , ๋ฌดํ๋, NaN ํฌํจ)
String: ๋ฌธ์์ด
์ซ์ํ
- ๋ณ์ ์ ์ธ, ๋์
let num = 20 // ๋ณ์ ์ ์ธ num = 14 // ๋์
๋ฌธ์์ด
- ๋ํ๊ธฐ, ์ธ๋ฑ์ฑ ๊ฐ๋ฅ
let first = 'Amy' let last = 'Kim' > first + last // 'AmyKim' > first[0] // 'A'
๐ Object ์๋ฃํ
Array
Object (์๋ ๊ฐ์ฒด ์น์ ์ฐธ๊ณ )
๋ฐฐ์ด
- ์ธ๋ฑ์ฑ ๊ฐ๋ฅ
- push๋ก ๋ฐฐ์ด์ ๊ฐ ์ถ๊ฐ
- https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array
let name = ['Amy', 'Tom'] > name[0] // 'Amy' > name.length // 2 name.push('David') > name // ['Amy', 'Tom', 'David']
๊ฐ์ฒด (์๋ ๊ฐ์ฒด ์น์ ์ฐธ๊ณ )
๐ฅ ์ฐ์ฐ์
์ฐ์ ์ฐ์ฐ์(Arithmetic operators) | +, -, *, /, %, ** |
์ฆ๊ฐ, ๊ฐ์ ์ฐ์ฐ์ | ++. -- |
ํ ๋น ์ฐ์ฐ์(Assignment operator) | =, +=, *=, -=. /= |
๋น๊ต ์ฐ์ฐ์(Comparison operator) | ===(strict equality), !==(strict non-equality), <, >, <=, >= |
๋ ผ๋ฆฌ ์ฐ์ฐ์(logical operator) | &&(AND), ||(OR), !(NOT) |
==, != ์ ๊ฐ์ด ๋์ผํ์ง ์ฌ๋ถ๋ ํ ์คํธ ํ์ง๋ง, ๊ฐ์ ๋ฐ์ดํฐ ์ ํ์ด ๋์ผํ์ง ์ฌ๋ถ๋ ํ ์คํธ ํ์ง ์์
๋ฐ๋ฉด ===, !== ์ ๊ฐ๊ณผ ๋ฐ์ดํฐ ์ ํ ๋๋ค ํ ์คํธ ํ ์ ์์
๐ฅ ์กฐ๊ฑด๋ฌธ
๐ if ๋ฌธ
function is_adult(age){ if(age > 20){ alert('์ฑ์ธ์ด์์') } else if (age > 10) { alert('์ฒญ์๋
์ด์์') } else { alert('10์ด ์ดํ!') } } is_adult(12)
๐ switch๋ฌธ
switch (expression) { case choice1: choice1์ธ ๊ฒฝ์ฐ ์คํํ ์ฝ๋ break; case choice2: choice2์ธ ๊ฒฝ์ฐ ์คํํ ์ฝ๋ break; // ์ํ๋ ๋งํผ ๋ง์ case๋ฅผ ํฌํจํ์ญ์์ค default: ๋ฌด์กฐ๊ฑด ์คํ๋๋ ์ฝ๋(actually, just run this code) }
const select = document.querySelector('select'); const para = document.querySelector('p'); select.addEventListener('change', setWeather); function setWeather() { const choice = select.value; switch (choice) { case 'sunny': para.textContent = 'sunny'; break; case 'rainy': para.textContent = 'rainy'; break; case 'snowing': para.textContent = 'snowing'; break; case 'overcast': para.textContent = 'overcast'; break; default: para.textContent = ''; } }
๐ฅ ๋ฐ๋ณต๋ฌธ
- for, while, do...while์ด ์๋ค.
- continue์ break ์ฌ์ฉ๊ฐ๋ฅํ๋ค.
๐ for ๋ฌธ
- ๊ธฐ๋ณธ ๊ตฌ์กฐ
for (์ด๊ธฐํ์; ์ข
๋ฃ ์กฐ๊ฑด; ์ฆ๊ฐ์) { // ์คํํ ์ฝ๋ }
for (let i = 0; i < 100; i++) { console.log(i); }
- ๋์ ๋๋ฆฌ๋ key๊ฐ์ ๋ฐฐ์ด์ index๊ฐ์ ๊ฐ์ ธ์ค๋ ๋ฐ๋ณต๋ฌธ
for (let key in ๊ฐ์ฒด) { // ์คํํ ์ฝ๋ }
const dict = {'name':'Amy', 'age':25} for (const key in dict){console.log(key)} // name // age
๐ While๋ฌธ
์ด๊ธฐํ์ while (์ข
๋ฃ ์กฐ๊ฑด) { // ์คํํ ์ฝ๋ ์ฆ๊ฐ์ }
๐ do ... While๋ฌธ
์ด๊ธฐํ์ do { ์คํํ ์ฝ๋ ์ฆ๊ฐ์ } while (์ข
๋ฃ ์กฐ๊ฑด)
๐ฅ ํจ์
// ๋ง๋ค๊ธฐ function ํจ์์ด๋ฆ(๋งค๊ฐ๋ณ์) { ๋ด๋ฆด ๋ช
๋ น๋ค์ ์์ฐจ์ ์ผ๋ก ์์ฑ } // ์ฌ์ฉํ๊ธฐ ํจ์์ด๋ฆ(์ธ์);
// ๋ง๋ค๊ธฐ function ํจ์์ด๋ฆ(๋งค๊ฐ๋ณ์) { ๋ด๋ฆด ๋ช
๋ น๋ค์ ์์ฐจ์ ์ผ๋ก ์์ฑ return result } // ์ฌ์ฉํ๊ธฐ result = ํจ์์ด๋ฆ(์ธ์);
๐ฅ ๊ฐ์ฒด (Object) ๊ธฐ๋ณธ
- https://developer.mozilla.org/ko/docs/Learn/JavaScript/Objects/Basics
- Property: ๊ฐ์ฒด ์์ ๋ณ์
- Method: ๊ฐ์ฒด ์์ ํจ์
๐ ๊ฐ์ฒด ์ด๊ธฐํ
- ๊ฐ์ฒด ์์ ๋ฉค๋ฒ๋ค์ (property, method) {} ๊ดํธ ์์์ ',' ๋ก ๊ตฌ๋ถ
- ๊ฐ์ฒด๋ฅผ ๊ตฌ์ฑํ๋ ๋ฉค๋ฒ์ ๊ฐ์ ์ด๋ค ๊ฒ์ด๋ผ๋ ๋ ์ ์์
- Property(์์ฑ)๋ key(์์ฑ๋ช )์ value(์์ฑ๊ฐ)๋ก ๊ตฌ์ฑ
var person = {};
const person = { name: { first: 'Bob', last: 'Smith' }, age: 32, gender: 'male', interests: ['music', 'skiing'], bio: function() { alert(this.name[0] + ' ' + this.name[1] + ' is ' + this.age + ' years old. He likes ' + this.interests[0] + ' and ' + this.interests[1] + '.'); }, greeting: function() { alert('Hi! I\'m ' + this.name[0] + '.'); } };
name, age, gender, intersts๋ property
bio, greeting์ method
๐ ์ ํ๊ธฐ๋ฒ
- dic.key ๋๋ dic.method๋ฅผ ์ด์ฉํด์(dic.๋ฉค๋ฒ๋ช ) ๊ฐ์ฒด์ property์ method์ ์ ๊ทผํ ์ ์๋ค.
- ์์ ๊ฐ์ฒด ์์์์
>> person.name // {first: 'Bob', last: 'Smith'} >> person.name.first // 'Bob' >> person.age // 32 >> person.interests[0] // 'music' >> person.bio() // Hi! I'm Bob. ๋ด์ฉ์ ์ฐฝ์ด ๋ธ
๐ ๊ดํธ ํ๊ธฐ๋ฒ
- dic[key] ๋ฅผ ์ด์ฉํด์ property์ ์ ๊ทผํ ์ ์๋ค. (method๋ ์ ์ผ๋ก๋ง ์ ๊ทผํ ์์์)
person['age'] // 32 person['name']['first'] // 'Bob'
๐ ๊ฐ์ฒด ๋ฉค๋ฒ ์ค์
- ' . ' ๊ณผ ' [ ] ' ๋ฅผ ์ด์ฉํ์ฌ ๊ฐ์ฒด์ ์๋ก์ด ๋ฉค๋ฒ๋ฅผ ์์ฑํ๊ฑฐ๋ ๊ธฐ์กด ๋ฉค๋ฒ๋ฅผ ๊ฐฑ์ ํ ์ ์๋ค.
person.age = 45; person['name']['last'] = 'Cratchit'; >> person.age // 45 >> person['name']['last'] // 'Cratchit'
person['height'] = 170 person.farewell = function() { alert("Bye everybody!"); } >> person['height'] // 170 >> person.farewell() // Bye everybody! ๋ด์ฉ์ ์ฐฝ์ด ๋ฌ๋ค
const dataname = 'opinion' const datavalue = 'yes' person[dataname] = datavalue >> person.opinion // 'yes'
๐ This
- ์ง๊ธ ๋์ํ๊ณ ์๋ ์ฝ๋๋ฅผ ๊ฐ์ง๊ณ ์๋ ๊ฐ์ฒด๋ฅผ ๊ฐ๋ฆฌํด
var person1 = { name: 'Chris', greeting: function() { alert('Hi! I\'m ' + this.name + '.'); } } var person2 = { name: 'Deepti', greeting: function() { alert('Hi! I\'m ' + this.name + '.'); } } >> person1.greeting() // Hi! I'm Chris. ๋ด์ฉ์ ์ฐฝ์ด ๋ฌ๋ค >> person2.greeting() // Hi! I'm Deepti. ๋ด์ฉ์ ์ฐฝ์ด ๋ฌ๋ค
Source
- mdn web docs https://developer.mozilla.org/ko/docs/Web/JavaScript/
- ์ํ์ฝ๋ฉ WEB2 JavaScript https://opentutorials.org/module/3180
- ์คํ๋ฅดํ์ฝ๋ฉํด๋ฝ ๋ด์ผ๋ฐฐ์๋จ ์น๊ฐ๋ฐ ์ข ํฉ๋ฐ 1์ฃผ์ฐจ : https://spartacodingclub.kr/nb
- https://velog.io/@bungouk6829/Javascript-%EC%9D%98-%EC%9E%90%EB%A3%8C%ED%98%95
'Language > JavaScript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JS] [์คํ๋ฅดํ์ฝ๋ฉํด๋ฝ ์น] Ajax ๋ค๋ค๋ณด๊ธฐ (GET) (0) | 2022.07.08 |
---|---|
[JS] [์คํ๋ฅดํ์ฝ๋ฉํด๋ฝ ์น] JQuery ๋ค๋ค๋ณด๊ธฐ (0) | 2022.07.08 |