본문 바로가기
Node.js

12/7 express.js - req.params 형변환, JS 비구조화, JS 네이밍, Map 객체

by 케이리케리 2023. 12. 14.

 

 

req.params를 통해 받은 1이 숫자가 아닌 문자로 인식해 문자열로 반환한다.

req.params를 통해 받은 숫자는 자료형이 문자열임을 알 수 있다.

 

req.params를 통해 받은 값을 숫자 10과 비교하여 10보다 크면 위와 같은 문구를 콘솔창에 출력하도록 했다.

하지만 req.params는 문자열만 반환하기때문에 조건문의 비교가 될 수 없다.

 

콘솔창을 확인해보니 조건문이 충족되어 실행문이 작동했다. 그래서 콘솔창에 "url로 전달받은 숫자가 10보다 크네요"라는 문구가 출력되었다.

문자열과 숫자는 비교될 수 없다. 그렇지만 비교되어 작동했다. 다른 언어에서는 일어날 수 없는 일이다. 이것은 자바스크립트의 오류이다.

 

 

 

자바스크립트가 문자형인 숫자를 숫자로 인식하고 있지만 

우리는 의도한 자료형으로 변환하는 습관을 가져야한다.

 

 


 

객체의 비구조화를 할때는 변수명을 원래 key의 이름과 같게 해줘야한다는 것을 알 수 있다.

 

 

자바스크립트 비구조화

객체의 비구조화

 

배열의 비구조화

 

 

배열은 객체와는 상관없이 인덱스값을 가지기때문에 순서대로 변수에 값이 들어간다.

 

 


자바스크립트 네이밍 케이스

[kebab-case] cf. snake_case // 둘 중 어떤 것도 좋으니 "통일"이 중요

폴더 ex. demo-api

파일명 ex. object-api-demo.js

=> 특징 : 알파벳 소문자, 두 개이상의 단어를 합쳐서 쓸 땐, 첫번째 단어와 두번째 단어 사이에 "-(하이픈)"

 

[camelCase]

변수, 함수 ex. channelTitle, videoNum

=> 특징 : 두 개이상의 단어를 합쳐서 쓸 땐, 두번째 단어의 첫글자를 "대문자"로

 

[PascalCase]

클래스

=> camelCase와 똑같지만 "첫글자를 대문자"로

 


map

 

데이터베이스에 저장할 때 테이블을 활용했었다. 그 테이블이 map처럼 생겼다고 말했다. 

key를 가지고 value를 찾을 수 있으면 map이라고 보면된다.

map이라는 자료구조는 key-value 쌍으로 이루어진 데이터 저장하는 형태이다.

 

json도 map 형태이다. json도 key-value형태

 

 

 

 

express에서 map 사용 방법