Hush 2022. 6. 19. 21:07

๊ฐ์ฒด๋ž€?

๊ฐ์ฒด๋Š” Key์™€ Value๋กœ ๊ตฌ์„ฑ๋œ property์™€ method๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค.

์‚ฌ์‹ค ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ๋Š” ๋ชจ๋“  ๊ฒƒ์ด ๊ฐ์ฒด๋ผ๊ณ  ํ•  ์ •๋„๋กœ ์ค‘์š”ํ•œ ๊ฐœ๋…์ด๋‹ค.

๊ฐ property๋Š” ์‰ผํ‘œ๋กœ ๊ตฌ๋ถ„๋˜๋ฉฐ, ๋งˆ์ง€๋ง‰ property์˜ ์‰ผํ‘œ๋Š” ์—†์–ด๋„ ๋˜์ง€๋งŒ ์žˆ๋Š”๊ฒŒ ์ฝ”๋“œ๊ด€๋ฆฌ์— ์šฉ์ดํ•˜๋‹ค.

๊ฐ์ฒด์˜ ์ ‘๊ทผ, ์ถ”๊ฐ€, ์‚ญ์ œ ๋ฌธ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
const superman={
  name:'clark',
  age:33,
}
 
//์ ‘๊ทผ
console.log(superman.name)
console.log(superman['age'])
 
//์ถ”๊ฐ€
superman.gender='male'
superman['hairColor']='black'
 
//์‚ญ์ œ
delete superman.hairColor
cs

๋‹จ์ถ• property๋ผ๋Š”๊ฒƒ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ด๋ฏธ ์„ ์–ธ๋œ ๋ณ€์ˆ˜๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๋Š”๋ฐ ์šฉ์ดํ•˜๋‹ค.

1
2
3
4
5
6
7
8
9
10
name='clark'
age=33
 
const superman={
  name,
  age,
  gender : 'male',
}
 
console.log(superman.name)//'clark'์„ ์ถœ๋ ฅํ•จ.
cs

๋งŒ์•ฝ ์กด์žฌํ•˜์ง€ ์•Š๋Š” property์— ์ ‘๊ทผํ•˜๋ ค๊ณ  ํ•˜๋ฉด ์—๋Ÿฌ๋ฅผ ๋ฐœ์ƒ์‹œํ‚ค๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ undefined๋ฅผ ๋Œ๋ ค์ค€๋‹ค.

๋งŒ์•ฝ ๊ฐ์ฒด๊ฐ€ ์–ด๋–ค property๋ฅผ ๊ฐ€์ง€๋Š”์ง€ ํ™•์ธํ•˜๋ ค๋ฉด in์„ ํ†ตํ•ด ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

'name' in superman // true

'length' in superman // false

 

for...in๋ฌธ์„ ํ™œ์šฉํ•˜๋ฉด ๊ฐ์ฒด์˜ property๋ฅผ ์‰ฝ๊ฒŒ ํƒ์ƒ‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

1
2
3
4
5
6
7
8
9
10
const superman={
  name : 'GY',
  age : '24',
  gender : 'male',
}
 
for(let i in superman) { //superman์˜ ๊ฐ Key๋ฅผ ๋ฐ›์œผ๋ฉฐ ๋ฐ˜๋ณต
  console.log(i)
  console.log(superman[i])
}
cs

 

๊ฐ์ฒด๋ณ€์ˆ˜ ์ž์ฒด๋ฅผ ์ฝ˜์†”์ฐฝ์— ์ฐ์œผ๋ฉด property๋ฅผ ๋‹ค ๋ณด์—ฌ์ค€๋‹ค.

 

ํ•จ์ˆ˜์˜ ๋ฆฌํ„ด๊ฐ’์œผ๋กœ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•ด์„œ ๋ฐ˜ํ™˜ํ•ด์ค„ ์ˆ˜ ์žˆ๋‹ค.

1
2
3
4
5
6
7
8
9
10
function makeFootballLover(name,age){
  return {
    name,
    age,
    hobby:'football',
  };
}
 
const Mike=makeFootballLover('Mike',30);
console.log(Mike)
cs

๊ฐ์ฑ„์˜ property๋กœ ์„ ์–ธ๋œ ํ•จ์ˆ˜๋ฅผ method๋ผ๊ณ  ํ•œ๋‹ค.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
const superman={
  name'clark',
  age: 33,
  fly: function(){
    console.log('๋‚ ์•„๊ฐ‘๋‹ˆ๋‹ค.'),
  }
}
 
const superwonam={
  name'sindy',
  age: 34,
  fly(){
    console.log('๋‚ ์•„๊ฐ‘๋‹ˆ๋‹ค.'),
  }
}
cs

 

method์—์„œ ํ˜„์žฌ object์˜ property์— ์ ‘๊ทผํ•˜๊ณ  ์‹ถ์œผ๋ฉด this.KEY๋ฅผ ํ™œ์šฉํ•˜๋ฉด ๋œ๋‹ค. ํŒŒ์ด์ฌ์˜ self์™€ ๋น„์Šทํ•œ ๋А๋‚Œ?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
let boy={
  name:'Mike',
  sayHello:function(){
    console.log(`Hello, I'm ${this.name}`)
  }
}
let girl={
  name:'Jane',
  sayHello:function(){
    console.log(`Hello, I'm ${this.name}`)
  }
}
 
boy.sayHello()
girl.sayHello()
 
cs

**์ฃผ์˜

method๋ฅผ ํ™”์‚ดํ‘œํ•จ์ˆ˜๋กœ ์„ ์–ธํ•˜๋ฉด this๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์—†๋‹ค. ํ™”์‚ดํ‘œํ•จ์ˆ˜์—์„œ this๋Š” object๊ฐ€ ์•„๋‹ˆ๋ผ ์ „์—ญ๊ฐ์ฒด๋ฅผ ๊ฐ€๋ฆฌํ‚จ๋‹ค. ๋ธŒ๋ผ์šฐ์ €ํ™˜๊ฒฝ์—์„œ๋Š” window, NodeJS์—์„œ๋Š” global์ด๋ผ๊ณ  ํ•œ๋‹ค. ์–ด๋ ค์šด ๋‚ด์šฉ์ด๋‹ˆ ์™„์ „ํžˆ ์ดํ•ดํ•˜์ง€ ๋ชปํ•ด๋„ ๋ฌด๋ฐฉํ•œ๋‹ค๊ณ  ํ•œ๋‹ค. ์ผ๋‹จ ๊ฐ์ฒด์˜ method๋Š” ํ™”์‚ดํ‘œํ•จ์ˆ˜๋กœ ์ž‘์„ฑํ•˜์ง€ ์•Š๋Š”๊ฒƒ์ด ์ข‹๋‹ค๊ณ ๋งŒ ์•Œ๊ณ ์žˆ์ž.

 

๊ฐ์ฒด์™€ ์ธ์Šคํ„ด์Šค

๊ฐ์ฒด๋Š” ์ธ์Šคํ„ด์Šค์˜ ํ˜•ํƒœ๋กœ ๋งŒ๋“ค์–ด์„œ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.

๊ฐ์ฒด๊ฐ€ ํ‹€์ด๋ผ๋ฉด ๊ทธ ํ‹€๋กœ ์ฐ์–ด๋‚ธ ๊ฒƒ์ด ์ธ์Šคํ„ด์Šค๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ๊ทธ ์ธ์Šคํ„ด์Šค์— ์‹๋ณ„์ž๋ฅผ ๋ถ™์—ฌ ์‚ฌ์šฉํ•œ๋‹ค.

 

๊ฐ์ฒด์˜ ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“ค ๋•Œ์—๋Š” new๋ผ๋Š” ์˜ˆ์•ฝ์–ด๋ฅผ ๋งŒ๋“ค์–ด์„œ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ํ˜„์žฌ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ํ‘œ์‹œํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ด๋ณด์ž.

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ๋‚ ์งœ๋‚˜ ์‹œ๊ฐ„ ์ •๋ณด๋Š” Date ๊ฐ์ฒด์— ์ €์žฅํ•˜๊ณ  ๊ด€๋ฆฌํ•œ๋‹ค.

๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๋Š” Date ๊ฐ์ฒด์˜ ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“ค๊ณ , ๊ทธ ์ธ์Šคํ„ด์Šค๋ฅผ ๋ณ€์ˆ˜์— ์ €์žฅํ•ด์„œ ์‚ฌ์šฉํ•œ๋‹ค.

var now = new Date();
document.write("ํ˜„์žฌ ์‹œ๊ฐ์€ " + now);

 

JS์˜ ๋‚ด์žฅ ๊ฐ์ฒด

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋‚ด์žฅ ๊ฐ์ฒด์—๋Š” ์›น ๋ฌธ์„œ์˜ ๊ณ„์ธต ๊ตฌ์กฐ์™€ ์ƒ๊ด€์—†์ด ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋Š” ๊ฐ์ฒด๊ฐ€ ์žˆ๋‹ค. Array ๊ฐ์ฒด์™€ Date ๊ฐ์ฒด๊ฐ€ ๋Œ€ํ‘œ์ ์ด๋‹ค.

Array ๊ฐ์ฒด๋Š” ์™œ์“ฐ๋Š”๊ฑฐ์ง€? ๊ฑ ๋ฐฐ์—ด๋ฌธ๋ฒ•์„ ์“ฐ๋Š”๊ฒŒ ํ›จ์”ฌ ํŽธํ•˜์ง€ ์•Š๋‚˜?

 

Date ๊ฐ์ฒด

Date ๊ฐ์ฒด๋Š” ๋‚ ์งœ์™€ ์‹œ๊ฐ„ ์ •๋ณด๋ฅผ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค.

Date ๊ฐ์ฒด๋Š” ํ˜„์žฌ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ์ถœ๋ ฅํ•˜๊ฑฐ๋‚˜ ๋‹ฌ๋ ฅ์„ ํ‘œ์‹œํ•  ์ˆ˜๋„ ์žˆ๊ณ , ํŠน์ •์ผ๊นŒ์ง€ ์–ผ๋งˆ๋‚˜ ๋‚จ์•˜๋Š”์ง€ ์•Œ๋ ค์ฃผ๋Š” ๋“ฑ ์‚ฌ์ดํŠธ์—์„œ ์—ฌ๋Ÿฌ ๊ฐ€์ง€๋กœ ์‘์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

Date ๊ฐ์ฒด ์ธ์Šคํ„ด์Šค ๋งŒ๋“ค๊ธฐ

์ผ๋ฐ˜์ ์ธ ๊ฐ์ฒด ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋งŒ๋“ค๋ฉด ๋œ๋‹ค.

new Date();

๊ทธ๋ฆฌ๊ณ  ํŠน์ •ํ•œ ๋‚ ์งœ๋ฅผ ์ €์žฅํ•œ Date ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ๋‹ค๋ฉด Date ๋‹ค์Œ์— ๋ถ™์ด๋Š” ๊ด„ํ˜ธ ์•ˆ์— ๋‚ ์งœ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•œ๋‹ค.

new Date("2020-02-25")

๋˜ํ•œ ์‹œ๊ฐ„ ์ •๋ณด๊นŒ์ง€ Date ๊ฐ์ฒด๋กœ ๋‚˜ํƒ€๋‚ด๋ ค๋ฉด ๋‚ ์งœ ๋‹ค์Œ์— ๋Œ€๋ฌธ์ž 'T' ๋ฅผ ์ถ”๊ฐ€ํ•œ ํ›„ ๊ทธ ๋’ค์— ์‹œ๊ฐ„์„ ์ž…๋ ฅํ•œ๋‹ค.

new Date("2020-03035T18:00:00")

 

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์ด ๋‚ ์งœ, ์‹œ๊ฐ„ ์ž…๋ ฅ ๋ฐฉ์‹ ์•Œ์•„๋ณด๊ธฐ

Date ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ์ง€์ •ํ•˜๋ ค๋ฉด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ธ์‹ํ•  ์ˆ˜ ์žˆ๋Š” ๋‚ ์งœ์™€ ์‹œ๊ฐ„ ํ˜•์‹์œผ๋กœ ์จ์•ผ ํ•œ๋‹ค.

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ์ฃผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋‚ ์งœ์™€ ์‹œ๊ฐ„ ์ž…๋ ฅ ๋ฐฉ์‹์„ ์•Œ์•„๋ณด์ž.

 

1. YYYY-MM-DDํ˜•์‹

๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ˜•์‹์ด๋‹ค.

new Date("2020")
new Date("2020-02")
new Date("2020-02-25")

2. YYYY-MM-DDTHH ํ˜•์‹

์‹œ๊ฐ„์€ ๋‚ ์งœ ๋’ค์— 'T'๋ฅผ ๋ถ™์ด๊ณ  HH:MM:SS์˜ ํ˜•ํƒœ๋กœ ์‚ฌ์šฉํ•œ๋‹ค. ๋งจ ๋์— 'Z'๋ฅผ ๋ถ™์ด๋ฉด UTC(๊ตญ์ œ ํ‘œ์ค€์‹œ)๋กœ ํ‘œ์‹œ๋œ๋‹ค.

new Data("2020-02-25T18:00:00")
new Data("2020-02-25T18:00:00Z")

 

3. MM/DD/YYYY ํ˜•์‹

์—ฐ๋„๋ฅผ ๋งˆ์ง€๋ง‰์— ๋‚˜ํƒ€๋‚ด๊ณ  ์‹ถ๋‹ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด MM/DD/YYYY ํ˜•ํƒœ๋กœ ์‚ฌ์šฉํ•œ๋‹ค.

new Date("02/25/2020"

 

4. ์ด๋ฆ„ ํ˜•์‹

์›”์€ January์ฒ˜๋Ÿผ ์ „์ฒด๋ฅผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ Jan๊ณผ ๊ฐ™์ด ์ค„์—ฌ์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋งจ ์•ž์— ์š”์ผ(Mon)์„ ํ•จ๊ป˜ ์ž‘์„ฑํ•  ์ˆ˜๋„ ์žˆ๋‹ค.

new Date("Mon Jan 20 2020 15:00:41 GMT+0900 (๋Œ€ํ•œ๋ฏผ๊ตญ ํ‘œ์ค€์‹œ)")

 

Date ๊ฐ์ฒด์˜ ๋ฉ”์„œ๋“œ

 

Math ๊ฐ์ฒด

Math๊ฐ์ฒด๋Š” ์ˆ˜ํ•™ ๊ณ„์‚ฐ๊ณผ ๊ด€๋ จ๋œ ๋ฉ”์„œ๋“œ๊ฐ€ ๋งŽ์ด ํฌํ•จ๋˜์–ด์žˆ๋‹ค.

 

Math ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ

์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ฐ’๋“ค์ด๋‹ค

์ข…๋ฅ˜ ์„ค๋ช…
E ์˜ค์ผ๋Ÿฌ์ƒ์ˆ˜
PI ์›์ฃผ์œจ
SQRT2 ๋ฃจํŠธ2
SQRT1_2 ๋ฃจํŠธ2๋ถ„์˜ 1
LN2 ๋กœ๊ทธ e์˜ 2
LN10 ๋กœ๊ทธ e์˜ 10
LOG2E ๋กœ๊ทธ 2์˜ e
LOG10E ๋กœ๊ทธ 10์˜ e

 

Math ๊ฐ์ฒด์˜ ๋ฉ”์„œ๋“œ