Node.js

정예반 수업 map, filter, find

수수 아보카도 2023. 1. 16. 22:04

정기님께서 정예반 수업 알려주셔서 A반 보충수업실가서 수업 잠깐 들었다.

 

1. 비구조화 할당

const 지영 = {name: "지영", score: 50}

const new지영 = {...지영}

지영.name = "수정"

 

복사할 땐 그냥 쓰는 게 아니라 ...한 다음에 해당 파라미터를 써줘야한다.

 

2. map

map은 리턴으로 T나 F로 하지 않는다.

특정 작업을 하고, return값을 저장한다.

const mapResult = scores.map((scores:{...}) => {
    return {
        ...score,
        score: score.score + 5
    }
})

만약 return 안써주고 싶으면 소괄호로 묶어주면 된다.

const mapResult = scores.map((scores:{...}) => ({
        ...score,
        score: score.score + 5
}))

 

 

map, find, filter 중에 하나 사용해서 뽑아오기가 숙제라는데, 처음부터 안들어서 잘 모르겠당...

 

 

4-3 movie_title 을 가진 게시물의 작성자의 이메일을 가져온다.

 

영화 목록보는 API, 영화 등록하는 API가 필요하다.

find: 배열 안에서 하나씩 가져온다.

const movies = [...]
const users = [...]

const express = require("express")
const cookieParser = require("cookie-parser")
const app = express()

app.use(express.json(), cookieParser())

app.get("/movies", (req,res) => {

        res.send(movies.map(movie => ({
                ...movie,
                name: users.find(user => user.id === movie.user_id).name
        })))
})

app.listen(3100, () => {

        console.log("서버 연결완료")
})

 

js의 날짜 가져오기

newMovie.created_at = new Date().toISOString()

 

배열에 요소 하나 추가하는 것: push()

배열의 기능 중 하나 splice

 

fe에는 index.html, movie.html, register.html을 만든다.