21.03.21 12:03 작성
·
2.7K
0
안녕하세요 강의 잘보고 있습니다!
강의를 보다가 궁금한점이 생겨서요!
toString()대신 toHexString() 을 사용한 이유가 궁금합니다~!!
답변 1
7
안녕하세요, 김동욱님!
toHexString()
의 정의는 아래와 같습니다.
Return the ObjectID id as a 24byte hex string representation.
해석해보면 ObjectID 형태의 id를 24바이트의 hex 문자열로 바꾸어 리턴해주는 함수입니다.
사실, 코드를 뜯어보면 toString()
은 toHexString()
을 리턴합니다.
위의 사진을 보면, toString
이 toHexString
을 반환하는 것을 보여줍니다.
즉, toString
이 toHexString
의 상위 함수로 볼 수 있을 것 같습니다. (toString은 toHexString을 래핑합니다.)
결국 현재 프로젝트 코드에서 toHexString
부분을 toString
으로 바꾸어서 실행해도 오류는 발생하지 않습니다.
제 생각에는, MongoDB에서 제공하고 있는 예제 코드에서도 toHexString으로 사용하고 있고, toString에 포함되어서 더 좁은 의미의 함수이기 때문에 예외발생률이 적어서 사용되는 것이 아닐까 싶습니다.
다른 의견이 있다면, 댓글 남겨주세요.
도움이 되었으면 좋겠습니다 :)