I have a collection like this.
{
"_id": "6137392141bbb7723",
"email": "[email protected]",
"lastname": "Cagle",
"firstname": "Brooke",
"phonenumber":9000000001
},
{
"_id": "6137392141bbe30723",
"email": "[email protected]",
"lastname": "Cagle",
"firstname": "Brooke",
"phonenumber":9000000002`
}
Aim is to update the phonenumber field with 91. i want to insert 91 infront each and every phonenumber of users.
{
"_id": "6137392141bbb7723",
"email": "[email protected]",
"lastname": "Cagle",
"firstname": "Brooke",
"phonenumber":919000000001
},
{
"_id": "6137392141bbe30723",
"email": "[email protected]",
"lastname": "Cagle",
"firstname": "Brooke",
"phonenumber":919000000002
}
im trying with updateMany
const doc = await User.updateMany(
{},
{ $set: {
//missing here
}},
{
new: true,
runValidators : true
});```
CodePudding user response:
I'm not sure that it's the best solution, but
parseInt('91' user.phonenumber.toString())
CodePudding user response:
EITHER add 910000000000
data.forEach(item => item.phonenumber = 910000000000)
OR
concatenate "91" and convert the string back to number
data.forEach(item => item.phonenumber = ("91" item.phonenumber))
const data = [{
"_id": "6137392141bbb7723",
"email": "[email protected]",
"lastname": "Cagle",
"firstname": "Brooke",
"phonenumber":9000000001
},
{
"_id": "6137392141bbe30723",
"email": "[email protected]",
"lastname": "Cagle",
"firstname": "Brooke",
"phonenumber":9000000002
}]
data.forEach(item => item.phonenumber = 910000000000)
console.log(data)
CodePudding user response:
Let Suppose that you have a data from as an array
[{
"_id": "6137392141bbb7723",
"email": "[email protected]",
"lastname": "Cagle",
"firstname": "Brooke",
"phonenumber":919000000001
},
{
"_id": "6137392141bbe30723",
"email": "[email protected]",
"lastname": "Cagle",
"firstname": "Brooke",
"phonenumber":919000000002
}]
First of all, you need to parse it to JavaScript, if it's a file you require fs module to be able to extract the data.
// parse to js
const array = JSON.parse(data);
const formattedArray = array.map( user => ({...user, phonenumber: Number(`91${user. phonenumber}`) }))
const newData = JSON.stringify(formattedArray)
That is it, I hope it can help you
