javascript - Javascript - 從匹配html table單元格的數組中刪除對象

133 2

將數組中存儲的每個對象(存儲在localStorage中)顯示到table中,然後在每個table行中為特定對象獲取自定義日誌,然後我嘗試從數組中移除對象,得到這個特定的日誌值。

以下是我的代碼:


let proxyTableArray = document.getElementById("proxy-table").rows;


for (var i = 1; i < proxyTableArray.length; i++) {


 if (proxyTableArray[i].cells[4].innerHTML =="Failed" ||"Banned") {


 let proxyArray = JSON.parse(localStorage.getItem("ProxyCollection"));


 let removedProxy = proxyArray.splice(i, 1);


 localStorage.removeItem("ProxyCollection");


 localStorage.setItem("ProxyCollection", JSON.stringify(proxyArray));


 }


}



我已經嘗試了各種方法,例如,將所有proxyTableArray [i],cells 0推送到名為FailedProxies的數組中,然後嘗試將它們從proxyArray中篩選出來,但是似乎無濟於事。 我也嘗試過


var filteredAry = proxyTableArray[i].cells.filter(function(e) { return e !== 'Failed' });



以下是在localStorage存儲數組中對象的外觀:


[


{Ip:"123.345.678.91", Port:"8080"},


{Ip:"173.192.21.89", Port:"8123"},


etc...


]



时间: 原作者:

150 1

你需要將比較器添加到條件的第二個條件中:


if (proxyTableArray[i].cells[4].innerHTML =="Failed" || proxyTableArray[i].cells[4].innerHTML =="Banned") {


 // that should work


}




條件語句中的每個條件都應視為獨立操作。

將html分配給可重用變數,這一點更簡潔:


const cellText = proxyTableArray[i].cells[4].innerHTML


if (cellText =="Failed" || cellText =="Banned") {


 // that should work


}



原作者:
...