1. ホーム
  2. javascript

mongooseのidと_idの違いは何ですか?

2023-10-19 04:31:30

質問

の違いは何ですか? _idid のどちらを使うべきでしょうか?どちらが参照に適しているのでしょうか?

どのように解決するのですか?

からの ドキュメント :

Mongoose はデフォルトで各スキーマに id 仮想ゲッターを割り当てています。 これはドキュメントの _id フィールドを文字列にキャストして返します。 ObjectIds の場合は hexString にキャストして返します。

つまり、基本的には id ゲッターは、ドキュメントの _id (これはデフォルトですべての MongoDB ドキュメントに追加され、デフォルトの型は ObjectId ).

参照するのに何が良いかということですが、それは文脈に完全に依存します。 ObjectId それとも string ). 例えば、比較する場合 id を比較する場合、おそらく文字列の方が良いのですが、これは ObjectId は同じインスタンスでない限り(どのような値を表しているかにかかわらず)等値判定に合格しません。