I\'m looking for an good / elegant way to validate that a javascript object has the required properties, so far this is what I have:
var fields = [\'name\',\
I would do for a real check for empty strings, because 0 is falsy, but a value and not empty.
function validateFields(object, keys) {
keys.forEach(function (k) {
if (k in object) {
console.log(k + ": " + object[k]);
if (object[k] === '') {
console.log(k + " exists but is empty");
}
return;
}
console.log(k + " doesn't exist in object");
});
}
var fields = ['name', 'age', 'address', 'zeroString', 'zeroNumber'],
info = { name: "John Doe", age: "", phone: "123-456-7890", zeroString: '0', zeroNumber: 0 };
validateFields(info, fields);