📅  最后修改于: 2023-12-03 15:10:53.127000             🧑  作者: Mango
在 Javascript 中,对象是由键值对组成的数据结构。有时候,我们需要检查对象中某个键对应的值是否符合我们的要求。这时候,就需要遍历对象中的所有键,然后找到与之对应的值进行检查。
下面是一个例子,我们有一个对象 person
,其中包含了一个 name
键和一个 age
键。我们要检查这些键对应的值是否符合要求:
const person = {
name: 'Jack',
age: 25
}
for (const key in person) {
if (Object.hasOwnProperty.call(person, key)) {
const value = person[key];
console.log(`${key}: ${value}`);
if (key === 'name' && typeof value !== 'string') {
console.error(`${key} 键对应的值不是字符串`);
}
if (key === 'age' && typeof value !== 'number') {
console.error(`${key} 键对应的值不是数字`);
}
}
}
我们首先使用 for...in
循环遍历对象的所有键。然后,我们在循环体中使用 Object.hasOwnProperty.call()
判断对象是否包含该键。如果包含,我们就获取该键对应的值,并输出到控制台。
接着,我们检查键值对是否符合要求。如果键是 name
,并且对应的值不是字符串,就输出错误信息。同样的,如果键是 age
,并且对应的值不是数字,也输出错误信息。
使用上述方法,我们可以很方便地遍历对象中的所有键,并对其对应的值进行检查。这种方法可以在很多场景下使用,例如校验表单数据、检查配置文件等等。