delete object not working
// define dis-allowed keys and values const disAllowedKeys = ['_id','__v','password']; const disAllowedValues = [null, undefined, '']; // our object, maybe a Mongoose model, or some API response const someObject = { _id: 132456789, password: '$1$O3JMY.Tw$AdLnLjQ/5jXF9.MTp3gHv/', name: 'John Edward', age: 29, favoriteFood: null }; // use reduce to create a new object with everything EXCEPT our dis-allowed keys and values! const withOnlyGoodValues = Object.entries(someObject).reduce((ourNewObject, pair) => { const key = pair[0]; const value = pair[1]; if ( disAllowedKeys.includes(key) === false && disAllowedValues.includes(value) === false ){ ourNewObject[key] = value; } return ourNewObject; }, {}); // what we get back... // { // name: 'John Edward', // age: 29 // } // do something with the new object! server.sendToClient(withOnlyGoodValues);
Here is what the above code is Doing:
1. We define an array of dis-allowed keys and values.
2. We define an object that we want to filter.
3. We use reduce to create a new object with only the keys and values we want.
4. We do something with the new object.