Почему мой цикл никогда не попадает в первый, если? Это пример моего json:
[
{Url: "apple.com", WhiteListType: 1, timestamp: 921421321321},
{Url: "google.com", WhiteListType: 3, timestamp: 721421321321},
{Url: "facebook.com", WhiteListType: 1, timestamp: 121421321321}
]
Посмотрите на мой цикл:
for (var i = 0; i < Whitelist.length; i++) {
if ( Whitelist[i].WhiteListType == 3 && Whitelist[i].Url == Preventer[data.WindowId].CurrentDomain ) {
console.log("first")
let req3 = {
Url: Preventer[data.WindowId].CurrentDomain,
WhiteListType: 0,
timestamp: Date.now()
}
Whitelist.push(req3);
console.log("Added white list" , Whitelist)
return webSocketClient.SendMessage("newWhiteList%" + JSON.stringify(Whitelist));
}else if (Whitelist[i].WhiteListType == 1 && Whitelist[i].Url == Preventer[data.WindowId].CurrentDomain) {
console.log("two")
let req3 = {
Url: Preventer[data.WindowId].CurrentDomain,
WhiteListType: 2,
timestamp: Date.now()
}
Whitelist.push(req3);
console.log("Added white list" , Whitelist)
return webSocketClient.SendMessage("newWhiteList%" + JSON.stringify(Whitelist));
} else if ( Whitelist[i].Url !== Preventer[data.WindowId].CurrentDomain !== 3 ) {
console.log("three")
let req5 = {
Url: Preventer[data.WindowId].CurrentDomain,
WhiteListType: 2,
timestamp: Date.now()
}
Whitelist.push(req5);
console.log("Added white list" , Whitelist)
return webSocketClient.SendMessage("newWhiteList%" + JSON.stringify(Whitelist));
Мой первый случай, если условие никогда не выполняется, но я не знаю почему. Он должен работать. Если URL-адрес совпадает, а если WhiteListType === 3.