所以這是我一直在努力解決的一個問題。我想過濾物件串列,但代碼似乎只適用于陣列。我可以用物件達到相同的結果嗎?基本上我想要的是:如果 card.name = jose. 然后洗掉 jose._R 如果 card.name = jose._R 然后洗掉 jose。
代碼:
var data = {'cards' :
[
{'name': "jose."},
{'name': "jose._R"},
{'name': "rodrigo."},
{'name': "rodrigo._R"},
{'name': "jojo."},
{'name': "jojo._R"},
]
};
let dataName = data.cards[0].name;
let rev = data.cards[0].name "_R";
var data2 = ["jose.", "jose._R", "rodrigo.", "rodrigo._R", "jojo.", "jojo._R",];
let dataName2 = data2[0];
let rev2 = data2[0] "_R";
if(dataName2.endsWith('.')){
data2 = data2.filter(function(f) {return f !== rev2});
};
if(dataName.endsWith('.')){
data = data.cards.filter(function(f) {return f !== rev}); // NOT WORKING! It doesn't remove the object array... :-(
};
console.log(data);
console.log(data2);
uj5u.com熱心網友回復:
在您的過濾器功能中
function(f) {
return f !== rev;
}
您正在將整個物件 { 'name': 'rodrigo.' }與字串進行比較,因此它們永遠不會相等。相反,您應該將 name 屬性與給定的字串進行比較:
function(f) {
return f.name !== rev;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/481480.html
標籤:javascript 数组 目的
上一篇:在p5js上翻轉影像Y軸
下一篇:Foreach陣列
