ν‹°μŠ€ν† λ¦¬ λ·°

ν‘œκΈ°λ²•

πŸ“Œ dash-case (kebab-case)

[ HTML, CSS ] 단어와 단어 사이에 λŒ€μ‰¬ '-' λ₯Ό μ‚¬μš©ν•œλ‹€.

ex) the-quick-brown-fox

 

πŸ“Œ snake_case

[ HTML, CSS ] λ‹¨μ–΄μ™€ 단어 사이에 언더바 '_' λ₯Ό μ‚¬μš©ν•œλ‹€.

ex) the_quick_brown_fox

 

πŸ“Œ camelCase

[ js ] 제일 μ•žμ˜ μ²«κΈ€μžλŠ” μ†Œλ¬Έμžμ΄λ©° 뒀에 μ²«κΈ€μžλΆ€ν„°λŠ” λŒ€λ¬Έμžλ‘œ μ‹œμž‘ν•œλ‹€.

ex)  theQuickBrownFox

 

πŸ“Œ PascalCAse

[ js ] λͺ¨λ“  μ²«κΈ€μžλŠ” λŒ€λ¬Έμžλ‘œ μ‹œμž‘ν•œλ‹€.

ex)  TheQuickBrownFox

 

πŸ“Œ Zero-based Numbering

0 기반 번호 λ§€κΈ°κΈ° πŸ‘‰ νŠΉμˆ˜ν•œ 경우λ₯Ό μ œμ™Έν•˜κ³  0λΆ€ν„° 숫자λ₯Ό μ‹œμž‘ν•©λ‹ˆλ‹€.

 

주석

// ν•œ 쀄

/*
 	μ—¬λŸ¬ 쀄
*/

/**
* μ—¬λŸ¬ 쀄
* λ©”λͺ¨1
* λ©”λͺ¨2
*/

μžλ£Œν˜•

πŸ“Œ Undefined

값이 ν• λ‹Ήλ˜μ§€ μ•Šμ€ μƒνƒœ

 

πŸ“Œ Null

μ–΄λ–€ 값이 μ˜λ„μ μœΌλ‘œ λΉ„μ–΄μžˆμŒ

λ³€μˆ˜

: 데이터λ₯Ό μ €μž₯ν•˜κ³  μ°Έμ‘°(μ‚¬μš©)ν•˜λŠ” λ°μ΄ν„°μ˜ 이름

 

πŸ“Œ let

1️⃣ μž¬μ‚¬μš©μ΄ κ°€λŠ₯

let a = 2;
let b = 5;

console.log(a+b); // 7
console.log(a-b); // -3

 

2️⃣ κ°’(데이터)의 μž¬ν• λ‹Ή κ°€λŠ₯

let a = 12;
console.log(a);	// 12

a = 999;
console.log(a); // 999

 

πŸ“Œ const

1️⃣ κ°’(데이터)의 μž¬ν• λ‹Ή λΆˆκ°€

const a = 12;
console.log(a);	// 12

a = 999;
console.log(a); // TypeError : Assignment to constant variable

μ˜ˆμ•½μ–΄

: νŠΉλ³„ν•œ 의미λ₯Ό κ°€μ§€κ³  μžˆμ–΄, λ³€μˆ˜λ‚˜ ν•¨μˆ˜ 이름 λ“±μœΌλ‘œ μ‚¬μš©ν•  수 μ—†λŠ” 단어

DOM API ( Document Object Model, Application Programming Interface )

πŸ“Œ DOM API

μžλ°”μŠ€ν¬λ¦½νŠΈλ‘œ HTML을 μ œμ–΄ν•˜λŠ” λͺ…λ Ήλ“€

DOM : HTML λ‚΄μš© , API : λͺ…λ Ή

 

λΈŒλΌμš°μ €λŠ” μ½”λ“œλ₯Ό μœ„μ—μ„œ μ•„λž˜λ‘œ λ‚΄λ € 읽어간닀.

script νƒœκ·Έλ₯Ό title νƒœκ·Έ μ•„λž˜μ— μ“°κ²Œ 되면, μ•„λž˜μ˜ body λ‚΄μš©μ„ 읽지 λͺ»ν•œλ‹€.

<script defer src="./main.js"></script>

 

script νƒœκ·Έμ— defer 속성을 μΆ”κ°€ πŸ‘‰ HTML μ½”λ“œλ₯Ό λ‹€ 읽고 main.js λ₯Ό 싀행함

 

1️⃣ 

 

βœ… ClassList.add(' ')

μ„ νƒν•œ μš”μ†Œμ— 클래슀λ₯Ό μΆ”κ°€ν•œλ‹€.

 

βœ… ClassList.contains(' ')

μ„ νƒν•œ μš”μ†Œμ— ν΄λž˜μŠ€κ°€ μ‘΄μž¬ν•˜λŠ”μ§€ ν™•μΈν•œλ‹€.

 

βœ… ClassList.remove(' ')

μ„ νƒν•œ μš”μ†Œμ˜ 클래슀λ₯Ό μ œκ±°ν•œλ‹€.

<div class="box"></div>
let boxEl = document.querySelector('.box');

boxEl.addEventListener('click', function() {
	boxEl.classList.add('active');
    console.log( boxEl.classList.contains('active'); 	// true
    
    boxEl.classList.remove('active');
    console.log( boxEl.classList.contains('active'); 	// false
})

 

2️⃣ 

 

<div class="box"> 1 </div>
<div class="box"> 2 </div>
<div class="box"> 3 </div>
<div class="box"> 4 </div>
const boxEls = document.querySelectorAll('box');

boxEls.forEach(function(boxEl,index) {
	boxEl.classList.add(`order-${index+1}`);		// μš”μ†Œμ— 'order-@' ν΄λž˜μŠ€κ°€ 좔가됨
});

 

3️⃣ 

 

λ©”μ†Œλ“œ 체이닝

split : 문자λ₯Ό 인수 κΈ°μ€€μœΌλ‘œ μͺΌκ°œμ„œ λ°°μ—΄λ‘œ λ°˜ν™˜

reverse : 배열을 λ’€μ§‘κΈ°

join : 배열을 인수 κΈ°μ€€μœΌλ‘œ 문자둜 병합해 λ°˜ν™˜

const a = 'Hello~';
const b = a.split('').reverse().join(''); // λ©”μ†Œλ“œ 체이닝

console.log(a); // Hello~
console.log(b); // ~olleH

 

데이터 νƒ€μž… ν™•μΈν•˜κΈ°

1️⃣ typeof

console.log(typeof 'Hello')		// 'string'
console.log(typeof 123)			// 'number'
console.log(typeof undefined)		// 'undefined'
console.log(typeof null)		// 'object'
console.log(typeof {})			// 'object'
console.log(typeof [])			// 'object'

 

null , Object , ArrayλŠ” 'object'둜 λ¦¬ν„΄λ˜λ―€λ‘œ 확인 λΆˆκ°€λŠ₯ν•˜λ‹€.

 

2️⃣ constructor

console.log([].constructor)	// Array()
console.log({}.constructor)	// Object()
console.log(null.constructor)	// TypeError: Cannot read properties of null (reading 'constructor')

 

null은 확인 λΆˆκ°€λŠ₯ν•˜λ‹€.

 

3️⃣ Object.prototype.toString.call

console.log(Object.prototype.toString.call(null).slice(8,-1))		// 'Null'

 

⭐ νƒ€μž…μ²΄ν¬ν•˜λŠ” ν•¨μˆ˜ λ§Œλ“€κΈ°

function checkType(data) {
  return Object.prototype.toString.call(data).slice(8,-1)
}

console.log(checkType('Hello'))		//'String'
console.log(checkType(123))		// 'Number'
console.log(checkType(undefined))	// 'Undefined'
console.log(checkType([]))		// 'Array'
console.log(checkType({}))		// 'Object'
console.log(checkType(null))		// 'Null'

 

 

 

 

좜처

ν”„λ‘ νŠΈμ—”λ“œ μ›Ή 개발의 λͺ¨λ“  것 초격차 νŒ¨ν‚€μ§€

곡지사항
μ΅œκ·Όμ— 올라온 κΈ€
μ΅œκ·Όμ— 달린 λŒ“κΈ€
Total
Today
Yesterday
링크
Β«   2025/05   Β»
일 μ›” ν™” 수 λͺ© 금 ν† 
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
κΈ€ 보관함