강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của inomosaic0443
inomosaic0443

câu hỏi đã được viết

Tìm hiểu cách phát triển JavaScript và VueJS thuần túy thông qua phát triển giao diện người dùng thực hành

Cấu trúc thư mục

Tag 와 Promise, 그리고 add() 펑션에 관한 질문입니다.

Viết

·

400

0

안녕하세요. 너무 좋은 강의 잘 듣고 있습니다.

공부하다가 막히는 부분이 있어서 질문 올립니다.

  1. MainController.js 파일의 시작 부분을 보면 다음과 같은 부분이 있습니다

    "const tag = '[MainController]' "

위와 같이 스트링으로 MainController 값을 집어 넣는 것을 처음 보는데, 이 부분은 어떤 명령어가 어떻게 처리하는 건가요?

마찬가지로, View.js 파일의 시작 부분에서도 "const tag = '[View]' " 부분이 있는데요, 이유와 쓰임세가 궁금합니다.

  1. KeywordModel.js 파일 안을 보면 Promise가 변수에 담기지 않고 바로 "new Promise" 식으로 구현이 되었습니다. 그럼 이 Promise의 instance는 무엇이 되는 건가요?

    이하는 코드 부분입니다.

    list() {

    return new Promise(res => { // 변수에다가 담지 않고 바로 new Promise를 했는데,

    // 이경우 그럼 Promise의 instance는무엇인가요?

    setTimeout(() => {

    res(this.data)

    }, 200)

    })

    }

    }

  2. HistoryModel.js 파일에서 add() 펑션 관련 질문입니다.

    아래 코드를 보면 궁금한 점이 두가지 있습니다.

    a) const date = '12.31'

    이 부분은 이렇게 해 버리면 나중에 수정이 안되지 않나요?

    근데 바로 아래줄에 this.data =[{keyword, date}, ...this.data] 이런식으로 나오면

    저 자료를 계속 활용한다는 이야기인데.

    굳이 const 와 스트링 조합으로 한 이유가 있나요?

b) some(item=> item.keyword == keyword)) 에서 item이 뜻하는게 뭔지 궁금합니다.

add(keyword = '') {

keyword = keyword.trim()

if (!keyword) return

if (this.data.some(item => item.keyword === keyword)) {

this.remove(keyword)

}

const date = '12.31'

this.data = [{keyword, date}, ...this.data]

}

javascriptvuejs

Câu trả lời 7

2

jeonghwan님의 프로필 이미지
jeonghwan
Người chia sẻ kiến thức

질문이 여러개라 하나씩 답변 드리겠습니다.

질문1:

const tag = '[MainController]'

이유와 쓰임세가 궁금

답변1:

개발할때 디버깅 용으로 사용하는 태그입니다.

예를들어 console.log(tag, 'hello world')로 로그를 남기면

"[MainController] hellow world" 문자열이 개발자 콘솔에 남는거죠.

1

jeonghwan님의 프로필 이미지
jeonghwan
Người chia sẻ kiến thức

질문2:

Promise의 instance는 무엇이 되는 건가요?

답변2:

프로미스 객체가 반환되는 것이죠

'그게 그말 아닌가요?' 라고 하실것 같네요.

list().then(fn).catch(fn) 형태로 사용할수 있습니다.

0

ryu sin님의 프로필 이미지
ryu sin
Người đặt câu hỏi

명쾌한 답변 감사합니다 .

오늘도 좋은 하루 되세요 : )

0

ryu sin님의 프로필 이미지
ryu sin
Người đặt câu hỏi

명쾌한 답변 감사합니다 .

오늘도 좋은 하루 되세요 : )

0

ryu sin님의 프로필 이미지
ryu sin
Người đặt câu hỏi

명쾌한 답변 감사합니다 .

오늘도 좋은 하루 되세요 : )

0

jeonghwan님의 프로필 이미지
jeonghwan
Người chia sẻ kiến thức

질문4:

some(item=> item.keyword == keyword)) 에서 item이 뜻하는게 뭔지 궁금합니다.

답변4:

this.data.some(...) 으로 실행하는 배열 함수입니다.

data 배열 데이터를 보면 답이 나오는데요

data: [

{ keyword: '검색기록2', date: '12.03' },

{ keyword: '검색기록1', date: '12.02'},

{ keyword: '검색기록0', date: '12.01' },

],

배열 요소인 {keyword: ' ', date: ' '} 가 item 변수로 들어옵니다.

0

jeonghwan님의 프로필 이미지
jeonghwan
Người chia sẻ kiến thức

질문3:

const date = '12.31'

이 부분은 이렇게 해 버리면 나중에 수정이 안되지 않나요?

근데 바로 아래줄에 this.data =[{keyword, date}, …this.data] 이런식으로 나오면

답변3:

상수 date는 아래 구문에서 객체의 값으로 사용됩니다.

따라서 this.data로 접근하면 변경가능하구요.

Hình ảnh hồ sơ của inomosaic0443
inomosaic0443

câu hỏi đã được viết

Đặt câu hỏi