How to extract json field from query response in node js?
I have a query:-
const Allposts = await Post.aggregate([pipeline])
Allposts:-
{
_id: 1,
type: 'A',
source: 'B',
status: 'C',
totalCount: 7,
createdAt: 2022-04-13T17:12:28.097Z,
updatedAt: 2022-04-13T17:12:28.097Z,
__v: 0
},
{
_id: 2,
type: 'A',
source: 'B',
status: 'C',
totalCount: 7,
createdAt: 2022-04-13T17:12:28.097Z,
updatedAt: 2022-04-13T17:12:28.097Z,
__v: 0
},
{
_id: 3,
type: 'A',
source: 'B',
status: 'C',
totalCount: 7,
createdAt: 2022-04-13T17:12:28.097Z,
updatedAt: 2022-04-13T17:12:28.097Z,
__v: 0
}, and so on
I want to extract the totalCount field and store its value how to do this?
If you get only totalCount field from query response, you can add .project() in query as below
const Allposts = await Post.aggregate().project("totalCount -_id");
Assuming totalCount value will be same in all the objects, you can extract the first value using first index
let tc = Allposts[0].totalCount;
let data = [{
_id: 1,
type: 'A',
source: 'B',
status: 'C',
totalCount: 7,
createdAt: '2022 - 04 - 13 T17: 12: 28.097 Z',
updatedAt: '2022 - 04 - 13 T17: 12: 28.097 Z',
__v: 0
},
{
_id: 2,
type: 'A',
source: 'B',
status: 'C',
totalCount: 7,
createdAt: '2022 - 04 - 13 T17: 12: 28.097 Z',
updatedAt: '2022 - 04 - 13 T17: 12: 28.097 Z',
__v: 0
},
{
_id: 3,
type: 'A',
source: 'B',
status: 'C',
totalCount: 7,
createdAt: '2022 - 04 - 13 T17: 12: 28.097 Z',
updatedAt: '2022 - 04 - 13 T17: 12: 28.097 Z',
__v: 0
}
]
let tc = data[0].totalCount;
console.log(tc);