断言对象的键是有效的
验证对象中的所有键是否与给定的 keys
匹配。
- 使用
Object.keys()
获取给定对象obj
的键。 - 使用
Array.prototype.every()
和Array.prototype.includes()
验证对象中的每个键是否在keys
数组中指定。
const assertValidKeys = (obj, keys) =>
Object.keys(obj).every(key => keys.includes(key));
assertValidKeys({ id: 10, name: 'apple' }, ['id', 'name']); // true
assertValidKeys({ id: 10, name: 'apple' }, ['id', 'type']); // false