🍘  λ°°μ—΄

- ν•˜λ‚˜μ˜ λ³€μˆ˜μ— μ—¬λŸ¬ 개의 κ°’ μ €μž₯

arr = [12, "apple", true]

- μ„œλ‘œ λ‹€λ₯Έ μžλ£Œν˜• ν•œ 배열에 μ €μž₯ κ°€λŠ₯

- λ°°μ—΄μ˜ 길이 확인

arr.length // 3

 

 

🍘  μ‹¬λ²Œ(Symbol)

- μœ μΌμ„±μ„ 보μž₯

- 객체 ν”„λ‘œνΌν‹°μ˜ ν‚€(key)둜 μ‚¬μš© κ°€λŠ₯

- μ˜€ν”ˆ μ†ŒμŠ€λ₯Ό κ°€μ Έμ˜¬ λ•Œ 같은 ν‚€ μ΄λ¦„μœΌλ‘œ μΆ©λŒν•˜λŠ” 상황 방지

- 잘 μ‚¬μš©ν•˜μ§„ μ•ŠμŒ

- μ„ μ–Έ

let var1 = Symbol()

- μ‹¬λ²Œμ„ ν‚€λ‘œ μ‚¬μš©ν•  λ•ŒλŠ” λŒ€κ΄„ν˜Έλ‘œ λ¬Άμ–΄μ„œ ν‘œν˜„

let id = Symbol()
const member = {
	id : 1234,
    [id] : 1
}
member[id]	// 1
member.id	// 1234

- μ‹¬λ²Œμ— μ„€λͺ… μΆ”κ°€ κ°€λŠ₯

Symbol("μ„€λͺ…")

 

 

 

🍘  μžλ°”μŠ€ν¬λ¦½νŠΈμ˜ μž₯점이자 단점, μžλ£Œν˜• λ³€ν™˜

 

λ‹€λ₯Έ 언어와 λ‹€λ₯΄κ²Œ μžλ°”μŠ€ν¬λ¦½νŠΈλŠ” λ³€μˆ˜λ₯Ό μ„ μ–Έν•  λ•Œ μžλ£Œν˜•μ„ μ§€μ •ν•˜μ§€ μ•Šκ³  λ³€μˆ˜μ— 값을 ν• λ‹Ήν•˜λ©΄ κ·Έ 값에 따라 μžλ£Œν˜•μ΄ κ²°μ •

--> λŠμŠ¨ν•œ μžλ£Œν˜• 체크

νŽΈλ¦¬ν•˜μ§€λ§Œ, μ—¬λŸ¬ μ‚¬λžŒμ΄ ν”„λ‘œμ νŠΈλ₯Ό 진행할 λ•Œ λ³€μˆ˜λ₯Ό μΌκ΄€μ„±μžˆκ²Œ μœ μ§€ν•˜μ§€ λͺ»ν•¨


β–ΆοΈŽ μžλ™ ν˜• λ³€ν™˜

- μžλ°”μŠ€ν¬λ¦½νŠΈλŠ” '+'κ°€ λ”ν•˜κΈ° μ—°μ‚°μžμ΄λ©΄μ„œ μ—°κ²° μ—°μ‚°μžλ‘œ μ‚¬μš©λ¨

- '+'λ₯Ό μ΄μš©ν•΄μ„œ μˆ«μžμ™€ λ¬Έμžμ—΄μ„ λ”ν•˜λ©΄ μˆ«μžκ°€ μžλ™μœΌλ‘œ λ¬Έμžμ—΄λ‘œ λ°”λ€Œλ©΄μ„œ 2개의 λ¬Έμžμ—΄μ„ μ—°κ²°ν•΄μ„œ λ³΄μ—¬μ€Œ

- κ·Έμ™Έ μ—°μ‚°μžλŠ” μžλ™μœΌλ‘œ λ¬Έμžμ—΄μ„ 숫자둜 λ³€ν™˜ν•œ ν›„ 계산함

 

β–ΆοΈŽ 직접 ν˜• λ³€ν™˜

- Number()

Number("200")	// 숫자 200으둜 λ³€ν™˜

 

κΈ°μ‘΄ μœ ν˜• λ°˜ν™˜ κ²°κ³Ό
true 1
false 0
숫자 숫자
null 0
undefined NaN
μ •μˆ˜,μ‹€μˆ˜ λ§¨μ•ž 0 제거
16μ§„μˆ˜ λ¬Έμžμ—΄ 10μ§„μˆ˜
빈 λ¬Έμžμ—΄ 0
기타 NaN

 

- parseInt()

- parseFloat()

- toString()

- String()

κ°’.toString()		// null, undefined μ œμ™Έν•œ λͺ¨λ“  μžλ£Œν˜• λ¬Έμžμ—΄λ‘œ λ³€ν™˜
κ°’.toString(κΈ°λ³Έκ°’)	// 기본값에 μž…λ ₯ν•œ μ§„μˆ˜ν˜•μœΌλ‘œ λ³€ν™˜

String(κ°’)		// null, undefined μžλ£Œν˜•κΉŒμ§€ λͺ¨λ‘ ν¬ν•¨ν•΄μ„œ λ¬Έμžμ—΄λ‘œ λ³€ν™˜

 

- Boolean()

 

 

🍘  μ—°μ‚°μž

μ‚°μˆ μ—°μ‚°μž, μ—°κ²°μ—°μ‚°μž, ν• λ‹Ήμ—°μ‚°μž, λ…Όλ¦¬μ—°μ‚°μžλŠ” λ‹€λ₯Έ 언어와 거의 κ°™λ‹€.

 

β–ΆοΈŽ λΉ„κ΅μ—°μ‚°μž

λΉ„κ΅μ—°μ‚°μžκ°€ λ‹€λ₯Έ 언어와 쑰금 λ‹€λ₯΄λ‹€.

μ—°μ‚°μž κΈ°λŠ₯
== ν”Όμ—°μ‚°μžμ™€ 값이 κ°™μœΌλ©΄ true
=== ν”Όμ—°μ‚°μžμ™€ κ°’, λ°μ΄ν„°μœ ν˜• λͺ¨λ‘ κ°™μœΌλ©΄ true
!= ν”Όμ—°μ‚°μžμ™€ 값이 같지 μ•ŠμœΌλ©΄ true
!== ν”Όμ—°μ‚°μžμ™€ κ°’, λ°μ΄ν„°μœ ν˜• λͺ¨λ‘ 같지 μ•ŠμœΌλ©΄ true

- ν”„λ‘œκ·Έλž¨μ—μ„œ 값을 비ꡐ할 λ•ŒλŠ” ===, !== μ—°μ‚°μž μ‚¬μš©ν•˜λŠ” 것이 μ’‹μŒ

- μžλ°”μŠ€ν¬λ¦½νŠΈμ—μ„œλŠ” λ¬Έμžμ—΄λΌλ¦¬ 비ꡐ도 κ°€λŠ₯함

- ν”Όμ—°μ‚°μžκ°€ λ¬Έμžμ—΄μΌ 경우 λ¬Έμžλ“€μ˜ μ•„μŠ€ν‚€μ½”λ“œ 값을 λΉ„κ΅ν•΄μ„œ κ²°μ •

- 첫번째 λ¬Έμžκ°€ μ„œλ‘œ 같은 μ•„μŠ€ν‚€κ°’μΌ 경우 λ‹€μŒ 문자 비ꡐ ν•˜λŠ” μ‹μœΌλ‘œ 비ꡐ

 

 

🍘  ForEach λ¬Έ

ν”„λ‘œκ·Έλž¨ 쀑에 λ°°μ—΄μ˜ 길이가 λ°”λ€Œμ–΄ μ •ν™•ν•˜κ²Œ λ°°μ—΄μ˜ 크기λ₯Ό μ•Œ 수 없을 λ•Œ, λ°°μ—΄μ˜ μš”μ†Œλ₯Ό κ°€μ Έμ™€μ„œ ν•¨μˆ˜λ₯Ό μ‹€ν–‰ν•  λ•Œ μ‚¬μš©

fruits.forEach(function(fruit) {
	console.log(fruit);
});

 

 

🍘  For...in λ¬Έ

λ°˜λ³΅ν•΄μ„œ 객체의 값을 κ°€μ Έμ™€μ„œ μ²˜λ¦¬ν•  λ•Œ μ‚¬μš©

let book = {
    title : "κ°€λ‚˜λ‹€",
    pubDate : "2019-02-04",
    pages : 777
}

for (key in book) {
    document.write(`${key} : ${book[key]}<br>`)
}
/*
title : κ°€λ‚˜λ‹€
pubDate : 2019-02-04
pages : 777
*/

 

 

🍘  for...of λ¬Έ

λ¬Έμžμ—΄μ΄λ‚˜ 배열같이 반볡 κ°€λŠ₯(literable) μžλ£Œμ—μ„œ μ‚¬μš©ν•˜λŠ” 반볡문

const students = ["a", "b", "c", "d"];

for (student of students) {
	document.write(`${student}, `);
}
//a, b, c, d