针对数组验证JavaScript对象键 [英] Validate javascript object keys against an array
本文介绍了针对数组验证JavaScript对象键的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
给出以下数组
const validKeyNames = ['name', 'gender', 'hasTheForce']
是否可以检查对象键是否为数组元素之一.
我希望能够做类似的事情:
I want to be able to do something like:
{ name: 'Luke Skywalker', gender: 'Male', hasTheForce: true } // => true
{ name: 'James Brown', gender: 'Male', hasTheFunk: true } // => false
推荐答案
您可以在 Object.Keys()
上使用 every()
并检查键是否存在于数组中使用 includes()
You can use every()
on Object.Keys()
and check if key exists in array using includes()
const validKeyNames = ['name', 'gender', 'hasTheForce']
var a = { name: 'Luke Skywalker', gender: 'Male', hasTheForce: true }
var b = { name: 'James Brown', gender: 'Male', hasTheFunk: true }
function check(obj, arr) {
return Object.keys(obj).every(e => arr.includes(e));
}
console.log(check(a, validKeyNames))
console.log(check(b, validKeyNames))
这篇关于针对数组验证JavaScript对象键的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文