Я учусь Node JS и Пн goose.
Я пытаюсь назначить пользователя (полученного из БД) новому object.
Но в журналах я получаю два разных значения.
const loginUser = await User.findOne({
email: email
}).select("+password");
console.log(loginUser);
{ _id: 5e71fc030c3c8221186b3448,
name: 'Abhisek',
email: 'a101@whites.com',
password:
'$2a$12$ylFeZZaTR5YDI3Z6xtyvFezQMwx1K4KzYsXBf3Ikz.3ltZsfMV0pa',
contactNo: '101',
__v: 0 }
, когда я использую оператор распространения , чтобы назначить его новому объекту и снова напечатать
let newUser = {...loginUser};
console.log(newUser);
{ '$__':
InternalCache {
strictMode: true,
selected: {},
shardval: undefined,
saveError: undefined,
validationError: undefined,
adhocPaths: undefined,
removing: undefined,
inserting: undefined,
saving: undefined,
version: undefined,
getters: {},
_id: 5e71fc030c3c8221186b3448,
populate: undefined,
populated: undefined,
wasPopulated: false,
scope: undefined,
activePaths:
StateMachine { paths: [Object], states: [Object], stateNames: [Array] },
pathsToScopes: {},
cachedRequired: {},
session: undefined,
'$setCalled': Set {},
ownerDocument: undefined,
fullPath: undefined,
emitter:
EventEmitter {
_events: [Object: null prototype] {},
_eventsCount: 0,
_maxListeners: 0 },
'$options': { skipId: true, isNew: false, willInit: true } },
isNew: false,
errors: undefined,
_doc:
{ _id: 5e71fc030c3c8221186b3448,
name: 'Abhisek',
email: 'a101@whites.com',
password:
'$2a$12$ylFeZZaTR5YDI3Z6xtyvFezQMwx1K4KzYsXBf3Ikz.3ltZsfMV0pa',
contactNo: '101',
__v: 0 },
'$locals': {},
'$op': null,
'$init': true }
В идеале он должен давать тот же лог, что и в 1-м. В чем разница между двумя объектами ??
Полностью запутанный здесь ...