Add assertValidKeys

This commit is contained in:
Chalarangelo
2021-06-18 21:35:44 +03:00
parent 2f1c0e9513
commit f5410f122b

View File

@ -0,0 +1,20 @@
---
title: assertValidKeys
tags: object,intermediate
firstSeen: 2021-07-18T05:00:00-04:00
---
Validates all keys in an object match the given `keys`.
- Use `Object.keys()` to get the keys of the given object, `obj`.
- Use `Array.prototype.every()` and `Array.prototype.includes()` to validate that each key in the object is specified in the `keys` array.
```js
const assertValidKeys = (obj, keys) =>
Object.keys(obj).every(key => keys.includes(key));
```
```js
assertValidKeys({ id: 10, name: 'apple' }, ['id', 'name']); // true
assertValidKeys({ id: 10, name: 'apple' }, ['id', 'type']); // false
```