Today I Learned

211104 항해 54일차

느닷 2021. 11. 5. 01:54

0. 실전프로젝트 MVP 기능 구현 완료

(물론 API 기능 연결)

디테일은 아직 더 잡아가야한다

최대한 사용자 입장에서 생각하자

 

1. 오늘 배운것

백엔드와의 통신에서,

백엔드가 데이터를 어떻게 response 해주느냐에 따라 데이터의 형태가 다르다.

-> 너무 당연한 말이긴 하다

예를들어 지금 실전프로젝트에서의 백엔드 기술스택은 Node.js 와 MySQL 이다.

여기서 DB에 접근해서 프론트에게 response를 줄때,

어떤 프레임워크를 활용하는지에 따라 내려오는 데이터의 형태가 다르다.

(물론 우리팀 백엔드분들은 데이터를 아주아주 쓰기좋게 정제해 주셔서 편했다)

지금까지 경험상 true false를 구분하기 위한 데이터를 받을때,

true false 로만 확인하다가

이번에는 0, 1 로 내려오는 데이터를 보기도 했고,

내려오는 데이터의 기본 타입이 int 가 아니라 str 인 경우도 봤다.

특히 이부분에서 많이 애를 먹었다.

 

특정 데이터를 비교하는 연산자를 쓰는데 있어서,

사실 타입까지 완벽하게 비교하는 "===" 연산자를 거의 디폴트로 쓰고 있었다.

그런데 int 가 아니라 str 으로 내려오는 데이터를 비교할 때는,

당연히 "===" 연산자로는 다르다는 값이 리턴된다.

"==" 로 타입비교까지는 하지 않는 방법을 써볼 수 있어야 하는데,

이부분이 쉽게 떠오르지 않았고, 생각보다 눈에 띄지 않았다.

-> 덕분에 해당 데이터의 경로에 죄다 console.log 를 찍어서 겨우 찾아냈다.

->> 물론 이부분도 백엔드 선생님들께서 잘 해결해주셨기도 하다.