iPod Video White

๐Ÿ““ TIL

[220426] ๐Ÿ“ข ๊ฐ์ฒด๋ฉ”์†Œ๋“œ/์ „๊ฐœ์—ฐ์‚ฐ์ž /๊ตฌ์กฐ๋ถ„ํ•ด

k_m_jin 2022. 4. 27. 01:35

arrray method

.reduce()

const arr = [1,2,3,4]

let sum =0 
for (let i = 0; i < arr.length; i += 1){
  sum += arr[i]
}

console.log(sum)
const arr = [1, 2, 3, 4]
arr.reduce((acc, cur) => acc + cur, 0)
const data = [
  'regNum',
  'name',
  'logo',
  'representative',
  'startDate',
  'address',
  'contactEmail',
  'tags',
  'intro',
  'homepage',
  'introFile'
]

const res = data.reduce((acc, name) => Object.assign(acc, {
  [name] () {
    console.log(123)
  }
}), {})

.reverse()

: ์š”์†Œ์˜ ์ˆœ์„œ ๋ฐ˜์ „

const arr = [1,2,3,4,5]
console.log(arr.reverse())//[5, 4, 3, 2, 1]
console.log(arr)//[5, 4, 3, 2, 1]

.slice()

: ์‹œ์ž‘์ธ๋ฑ์Šค๋ถ€ํ„ฐ ์ข…๋ฃŒ์ธ๋ฑ์Šค์˜ ์ง์ „๊นŒ์ง€ ์ž˜๋ผ์„œ ์ƒˆ๋กœ์šด ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜

const arr = [1,2,3,4,5]
arr.slice(0,3) //[1, 2, 3]

.some( )

: ์š”์†Œ ์ค‘ ํ•œ๊ฐœ๋ผ๋„ ํŒ๋ณ„ํ•จ์ˆ˜๋ฅผ ํ†ต๊ณผํ•˜๋ฉด true, ๋นˆ ๋ฐฐ์—ด์—์„œ ํ˜ธ์ถœํ•˜๋ฉด ๋ฌด์กฐ๊ฑด false ๋ฅผ ๋ฐ˜ํ™˜

const arr = [1,2,3,4,5]
console.log(
  arr.some(item => item === 1)
)//true

.splice( ๋Œ€์ƒ์š”์†Œ์ธ๋ฑ์Šค, [๊ฐฏ์ˆ˜], [์ถ”๊ฐ€๋ฐ์ดํ„ฐ])

: ๋ฐฐ์—ด์˜ ๊ธฐ์กด ์š”์†Œ๋ฅผ ๋ณ€๊ฒฝํ•ด์„œ ๋ณ€๊ฒฝ๋œ ๋ฐฐ์—ด์„ ๋ฐ˜ํ™˜

const arr = ['a', 'b', 'c', 'd']
console.log(
  arr.splice(2,2, 'x')
)//['c', 'd']
console.log(arr)//['a', 'b', 'x']

์ถ”๊ฐ€๋งŒ ํ•  ๊ฒฝ์šฐ

const arr = ['a', 'b', 'c', 'd']
// .splice(์ธ๋ฑ์Šค, ์‚ญ์ œ๊ฐœ์„œ, ์ถ”๊ฐ€๋ฐ์ดํ„ฐ)
console.log(
  arr.splice(2,0, 'x')
)//[]
console.log(arr)//['a', 'b', 'x', 'c', 'd']

object method

Object.assign(๋Œ€์ƒ, ์ถœ์ฒ˜, ..)

: ๋Œ€์ƒ์— ์ถœ์ฒ˜๋“ค์„ ๋ณต๋ถ™
์›๋ณธ ์†์ƒ

const user = {
  name: 'heropy',
  age: 85,
  isValid: true
}
const userB = {}
Object.assign(๋Œ€์ƒ, ์ถœ์ฒ˜) // ๋Œ€์ƒ์—์„ธ ์ถœ์ฒ˜๋“ค๋ฅผ ๋ณต๋ถ™ 
// ์ƒˆ๋กœ์šด ๋ฐฐ์—ด์„ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•
Object.assign({}, user, userB) 

Object.entries(๊ฐ์ฒด)

: ๊ฐ์ฒด๋ฅผ 2์ฐจ์› ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜. ๊ฐ key์™€ value๋ฅผ [key, value]

const user = {
  name: 'heropy',
  age: 85,
  isValid: true
}
 Object.entries(user) 
// ๊ฒฐ๊ณผ 
// [
//   ["name","heropy"],
//   ["age", 85],
//   ["isValid",true]
// ]
for(const item of  Object.entries(user) ) {
  console.log(item[0])//key
  console.log(item[1])//value
}

Object.keys(๊ฐ์ฒด)

: ๊ฐ์ฒด์˜ key๋“ค์„ ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜

const user = {
  name: 'heropy',
  age: 85,
  isValid: true
}
Object.keys(user) //['name', 'age', 'isValid']
  • ๊ฐ ์†์„ฑ๋“ค์„ ๊บผ๋‚ผ ๋–„
    Object.keys(user).forEach( item => {
    console.log(user[item])
    })
    ๋‹ค์‹œ๋ณด๊ธฐObject.values(): ๊ฐ์ฒด์˜ value ๋งŒ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜
    const user = {
    name: 'heropy',
    age: 85,
    isValid: true
    }
    Object.values(user) //['heropy', 85, false]

    date method

  • const state = { name: '', age: '', isValid: false } const mutations = { setState(payload) { Object.keys(payload).forEach(key => { state[key] = payload[key] }) } } mutations.setState({ name: 'Heropy', age: 85 })
  • ๋ณ€์ˆ˜์— ๋‹ด๋Š” ์ˆœ๊ฐ„์˜ ํ˜ธ์ถœ๋œ ์‹œ๊ฐ„์ด ๋‹ด๊น€
    const date = new Date()
    date.getFullYear() // ํ˜„์žฌ๋…„๋„
    date.getMonth() // zero based 1์›”์ด 0
    date.getDate()
    date.getDay() // ์ผ์š”์ผ์ด 0
    date.getHours()
    date.getMinutes()
    date.getSeconds()
    new Date().getSeconds()
    Date.now()
  • Date.now() // 1970.01.01 00:00:00 ๋กœ ๋ถ€ํ„ฐ ํ˜„์žฌ๊นŒ์ง€์˜ ์‹œ๊ฐ„์„ ms ๋กœ ํ‘œํ–”
  • ์†Œ์š” ์‹œ๊ฐ„ ๊ณ„์‚ฐ
    const now = Date.now()
    

for (let i =0; i< 1000; i += 1) {
console.log('')
}

console.log(Date.now()- now)
//78

> moment js : ๋‚ ์งœ ํฌ๋งท์„ ์‰ฝ๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.  
> day js : moment ์— ๋น„ํ•ด ๊ฐ€๋ณ๋‹ค.(์ถ”๊ฐ€ ํ”Œ๋กœ๊ทธ์ธ์ด ํ•„์š”)

# ์ „๊ฐœ์—ฐ์‚ฐ์ž
: ๋ฐฐ์—ด์ด๋‚˜ ๊ฐ์ฒด์˜ ๊ด„ํ˜ธ๋ฅผ ๋‚ ๋ ค์ฃผ๋Š” ์—ญํ• 
## ๋ฐฐ์—ด์—์„œ
```js
const a =[1, 2, 3]
const b =[4, 5, 6]

const u = a.concat(b)
const c = [...a, ...b]
  • ๋‚˜๋จธ์ง€ ์—ฐ์‚ฐ์ž
    const a =[1, 2, 3] 
    function fn(z, ...rest){
    console.log(z, rest)
    }
    fn(a) // 1, [2, 3]

๊ฐ์ฒด์—์„œ

const a1 = {
  x: 1,
  y: 2
}
const b1 = {
  y: 3,
  z: 4
}

const c1 = Object.assign({}, a1, b1)
const d = {...a1, ...b1}
console.log(c1)
console.log(d)

๊ตฌ์กฐ ๋ถ„ํ•ด ํ• ๋‹น

  • ๊ฐ์ฒด & ๋ฐฐ์—ด์—์„œ ํ™œ์šฉ๊ฐ์ฒด ๊ตฌ์กฐ ๋ถ„ํ•ด
    • ์—†๋Š” ์†์„ฑ์„ ๊บผ๋‚ด๋ฉด undefined
      const user = {
      name: 'heropy',
      age: 85,
      isValid: true
      }
      const { email} = user //undefined
      ๊ธฐ๋ณธ๊ฐ’ ์ง€์ •๋ณ„์นญ ์ง€์ •nama ์ด๋ผ๋Š” ์†์„ฑ์„ n ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ฒ ๋‹ค.
      const { name : n} = user
      const n = user.name //๊ฐ™์€ ์˜๋ฏธ
    • const { email = 'sdkhdfk@gmail.com'} = user
  • const user = { name: 'heropy', age: 85, isValid: true } const { isValid} = user //true
const { name: n, age: a, isValid: i} = user
const { name: n, ...rest} = user 
//heropy {age: 85, isValid: true}
//rest๋Š” ๊ฐ์ฒด๋ฐ์ดํ„ฐ๋กœ 

๋ฐฐ์—ด ๊ตฌ์กฐ๋ถ„ํ•ด

๋ฐฐ์—ด์€ ์ˆœ์„œ๋Œ€๋กœ ๊ตฌ์กฐ๋ถ„ํ•ด

const arr = [1, 2, 3]
const [x, y, z] = arr
const [,, z] = arr  //3

๊ธฐ๋ณธ๊ฐ’ ์ง€์ •

const arr = [1, 2, 3]
const [x, y, z, a = 99] = arr
console.log(a)//99

๋‹ค์‹œ๋ณด๊ธฐ

const user = {
  name: 'heropy',
  age: 85
}

for (const item of Object.entries(user)) {
  console.log(item)
}

//['name', 'heropy']
//['age', 85]

for (const [k,v ] of Object.entries(user)) {
  console.log(k, v)
}
//name heropy
//age 85

p์™€ w์˜ ๊ฐ’์„ ๋ฐ”๊พธ๊ณ  ์‹ถ์„๋•Œ

let p =1
let w =3
;[p,w] =[w,p]
//; ๋ฅผ ์“ฐ๋Š” ์ด์œ ๋Š” ํ‘œํ˜„์‹์ด ๋๋‚ฌ๋‹ค๋Š” ๊ฑธ ์•Œ๋ ค์ฃผ๊ธฐ ์œ„ํ•ด

์ „๊ฐœ์—ฐ์‚ฐ์ž๋กœ ๋‚˜๋จธ์ง€๋ฅผ ๋ฐ›์œผ๋ฉด ๋ฐฐ์—ด๋กœ ๋“ค์–ด๊ฐ„๋‹ค

const arr = [1,2,3,4,5,6,7,8]
const [x,y,...rest] = arr
console.log(x,y , rest)//1 2 [3, 4, 5, 6, 7, 8]

๋ฐ์ดํ„ฐ ๊ฐ€๋ณ€์„ฑ ๋ถˆ๋ณ€์„ฑ immutavility

๋ฐ˜์‘ํ˜•