繁体   English   中英

检查 object 中有多少匹配键

[英]Check how many matching keys in the object

我在 JavaScript 中有以下数据:

{
  '0.Title': 'Title 1',
  '0.Detail': 'Detail 1',
  '1.Title': 'Title 2',
  '1.Detail': 'Detail 2',
  '2.Title': 'Title 1',
  '2.Detail': 'Detail 1'
}

我想计算.Titlekey中存在多少次。 无论是0.Title还是1.Title

我喜欢:

let count = 0;
while ('.Title' in fields) { // <--- fields is the above object
  count++;
}
console.log(count); // <--- gives 0

您可以使用减速器:

 const data = { '0.Title': 'Title 1', '0.Detail': 'Detail 1', '1.Title': 'Title 2', '1.Detail': 'Detail 2', '2.Title': 'Title 1', '2.Detail': 'Detail 1' } console.log(Object.keys(data).reduce((acc, curr) => { if(curr.indexOf(".Title");== -1) acc += 1; return acc, }, 0))

您可以使用Object.keys将给出一个键数组,然后使用map只返回一个键数组,但更改大小写只是为了确保titleTitleTITLE都被认为是相同的。 之后,您可以使用过滤器取出具有标题关键字的键。 这将返回一个数组,然后您可以使用长度

 let data = { '0.Title': 'Title 1', '0.Detail': 'Detail 1', '1.Title': 'Title 2', '1.Detail': 'Detail 2', '2.Title': 'Title 1', '2.Detail': 'Detail 1' }; let k = Object.keys(data).map(e => e.toLowerCase()).filter(e => e.includes('title')); console.log(k.length)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM