嘗試從以下結構中檢索內部陣列(標簽):

“tags”陣列包含帶有“function”值的標簽,為此我使用以下運算式:
let func = parsed.filter(x => x.tags.filter(x => x.tag == "function"));
正在決議結構,但結果是:

它在“tag”屬性中包含一個不包含“function”值的陣列。如何僅獲取“標簽”屬性中包含“函式”值的陣列?
uj5u.com熱心網友回復:
您的問題是內部過濾器x.tags.filter(x => x.tag == "function")回傳空陣列[],即使它沒有找到任何 tag 也是真值function。
您需要確保 tu 回傳真/假或至少正確的真/假值。
簡單的修復,只需添加.length:
let func = parsed.filter(x => x.tags.filter(x => x.tag == "function").length);
零0是虛假值,任何大于0等1的都是真實的
測驗:
var arr = [
{ tags: [{ tag: 'function' }]},
{ tags: [{ tag: 'function2' }]}
].filter(x => x.tags.filter(x => x.tag == "function").length);
// arr is [{ tags: [{ tag: 'function' }]}]
console.log(arr);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/482998.html
