외부에서 들어오는 값들은 유효성 체크가 필요하다.
1. 외부에서 들어오는 값의 종류
・파라미터
・redis, DB 등
・API rreturn
2. 값의 유효성을 체크하는 방법론 : 표로 체크하기
1 2 3 4 5 6 7 8 | function extractEntity(sentence,userId,isFinal){ //Redis let lastWexResult = yield SessionWex.getField(userId,'wex_result'); //external API call and return let result = yield sendRequest(options); ... } | cs |
위와같은 함수가 존재할 경우,
・파라미터 : sentence,userId,isFinal
・redis, DB 등 : lastWexResult
・API rreturn : result
가 외부에서 들어오는 값으로 인식될 수 있다.
이때 표를 만들어 각 값의 유효성을 체크하면 편리하다.
|
sentence |
userId |
isFinal |
lastWexResult |
result |
return |
type |
parameter |
parameter |
parameter |
Redis |
API return |
X |
is it can be undefined? |
X |
X |
X |
X |
X |
|
is it can be null? |
X |
X |
X |
O |
X |
|
datatype | String | String | String | Object | Object | X |
이렇게 정리하면 null이나 undefined의 값이 외부로 부터 들어올 때 구멍없이 처리할 수 있다.
3. 유효성 처리를 어떻게 할 것인가?
・디폴트 파라미터 값을 주어, null이나 undefined가 들어올 경우 default값을 주도록 한다.
・함수 내에 조건문을 통해 null이나 undefined를 처리한다. 이때 ()?true:false 의 oneline 조건문을 쓰면 편리하다.
'C Lang > JS Technic' 카테고리의 다른 글
javascript로 guid발급 (0) | 2018.09.08 |
---|---|
Stream API입문 (0) | 2018.09.05 |
async-await, async-await를 사용한 비동기처리와 generator-yield를 사용한 비동기처리의 차이 (0) | 2018.08.27 |
in 연산자 (0) | 2018.08.23 |
for in vs for of 반복문 (0) | 2018.08.23 |