강의

멘토링

커뮤니티

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

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

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

Tạo phần mềm JS vững chắc

Click vào Count View Module - Thông số kỹ thuật 1 (tiếp theo)

actual 관련 Error Catch 부분.

Viết

·

220

0

안녕하세요 

 

수업중 궁금한 부분이 있어 글을 남깁니다.
actual 이라는 함수로 만들어서 바로 error 를 만드는 것이 아니고 

ClickCountView.js 에서 throw Error 를 해야지만 오류가 발생하는 건가요?

설명상으로 이해 하면 actual 라는 함수로 바로 error 를 만들어내는 걸로 이해를 했는데요 !.

tdd

Câu trả lời 1

3

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

자스민의 exprect 매처는 인자로 넣은 함수가 예외를 던지면 toThrowError()로 검증할수 있습니다. 그래서 인자로 전달한 actual 함수가 예외를 던지는지 테스트하는 코드인데요.

질문하신 것을 정리하면 왜 actual 함수 본체에서 예외를 던지지 않는건지 궁금하신 것이죠? ClickCountView에서 예외를 던져야만 하는게 궁금하신 걸로 이해했습니다.

이것은 자바스크립트의 예외 처리 방식을 알면 이해할 수 있습니다. 특정 함수에서 예외가 발생했을 때 보통 이것을 catch로 처리합니다. 그렇지 않으면 이 예외는 함수 호출 순서상(함수 호출 스택에 쌓이는 순서) 이전 함수에게 전달됩니다. 이것은 처리가 될 때까지 이전 함수에게 전달되는 방식입니다.

다시 우리 예제로 돌아옵시다. ClickCountView에서 예외를 처리하지 않으면 이것은 이전 함수에게 전달됩니다. 그것이 바로 actual 함수입니다. 여기서 예외가 발생되면 자스민에서 toThrowError로 검증할 수 있는거구요. 그래서 actual 함수에서 직접 예외를 발생시키는 것과 ClickCountView에서 예외를 발생해 처리하지 않은 것은 같은 효과가 있습니다.

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

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

Đặt câu hỏi