TypeScript에서 IF문과 Const문을 어떻게 같이 사용할 수 있을까요?
조회수 728회
if (process.platform == 'win32'){
const os: string = "저는 win32 입니다."
} else if (process.platform == 'linux'){
const os: string = "저는 linux입니다."
} else {
const os: string = "Unknowns Target 입니다."
}
console.log(os)
이렇게 하고 싶은데, const가 if문 블록내에서만 유효해서 바깥에서 사용할 수 없습니다.
어떻게 해결할 수 있을까요?
2 답변
-
저는 보통 저런 경우 아래와 같이 작성합니다. mutable한 변수는 IIFE 내에서만 사용하고, 밖으로 내보낼 때에는 immutable하게 할당합니다.
const os = (() => { switch (process.platform) { case 'win32': return "저는 win32 입니다." case 'linux': return "저는 linux 입니다." default: return "Unknowns Target 입니다." } })()
-
(•́ ✖ •̀)
알 수 없는 사용자
-
-
혹시 이렇게 구현하면 안되는 이유가 있나요?
let tmp = "Unknowns Target 입니다." if (process.platform == 'win32'){ tmp = "저는 win32 입니다." } else if (process.platform == 'linux'){ tmp = "저는 linux입니다." } const os: string = tmp console.log(os)
TypeScript 에 대해 잘 알지 못하여서 const가 반드시 저렇게 쓰여야 하는 상황인지 궁금합니다.
혹시 문제가 된다면 알려주시기 바랍니다.
감사합니다.
-
(•́ ✖ •̀)
알 수 없는 사용자
-
댓글 입력