如何从JavaScript对象数组中提取含"F"的键对应的值?
修正代码提取键名含"F"的对应值
假设你的目标数组数据结构如下(保持原数据结构不变):
const targetData = [ { Id: 1, Name: "John", FullName: "John Doe", Phone: "123-4567" }, { Id: 2, Name: "Jane", FullName: "Jane Roe", Fax: "987-6543" } ];
修正后的实现代码
// 初始化数组存储结果 const resultValues = []; // 遍历数组中的每个对象 targetData.forEach(item => { // 获取当前对象的所有键名 const keys = Object.keys(item); // 遍历每个键名进行筛选 keys.forEach(key => { // 判断键名是否包含"F"(区分大小写,如需忽略大小写可改为key.toLowerCase().includes('f')) if (key.includes("F")) { resultValues.push(item[key]); } }); }); // 打印最终结果 console.log(resultValues);
代码说明
- 用
Object.keys(item)获取每个对象的所有键名,确保不会遗漏任何键 - 通过
key.includes("F")精准匹配键名中包含"F"的项 - 遍历数组内所有对象,将符合条件的值统一收集后输出,避免重复打印操作
如果你的原代码是因为未遍历对象键名、判断逻辑错误导致失效,上述代码可以直接替换实现需求。
内容的提问来源于stack exchange,提问作者Mahbubur Rahman
相关产品推荐
相关产品推荐

