我使用過濾器來查找data.it中的id返回對象不是true或false。我如何返回true或false如果val.recoredId === valueId?過濾器返回true或false
var hasMatch = data.filter(function (val) {
return (val.recordId === valueId);
});
我使用過濾器來查找data.it中的id返回對象不是true或false。我如何返回true或false如果val.recoredId === valueId?過濾器返回true或false
var hasMatch = data.filter(function (val) {
return (val.recordId === valueId);
});
使用發現
hasMatch = data.find(function (value) {return value.recordId == valueId });
只是檢查篩選結果
的長度var hasMatch = data.filter(function (val) {
return (val.recordId === valueId);
}).length > 0;
不需要'> 0' – Tushar
@Tushar當然,它不會工作,因爲0是一個虛假的值。但也許爲了可讀性,並且由於OP似乎對這種過濾方法來說是新的,所以我會保留它。此外,我的答案將與您的答案相同:) – gurvinder372
取決於hasMatch是否需要爲實際布爾值 - 如果是,則保持> 0測試。 – nnnnnn
目前還不清楚你問什麼,但假設'data'是一個數組,請嘗試['map'](https://developer.mozilla.org/e n-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map)功能。 –
你的問題真的不清楚,請閱讀「如何問一個好問題」,然後再試一次...... – areim
是你的問題「我需要將hasMatch設置爲true,如果我的數組中有任何對象的id等於valueId 「? – nnnnnn