![](/img/trans.png)
[英]Check how many elements of an array exists as keys in an object in javascript
[英]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'
}
我想計算.Title
在key
中存在多少次。 無論是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
只返回一個鍵數組,但更改大小寫只是為了確保title
或Title
或TITLE
都被認為是相同的。 之后,您可以使用過濾器取出具有標題關鍵字的鍵。 這將返回一個數組,然后您可以使用長度
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.