我的if语句为true但它也执行我的else语句
if ((request.readyState === 4) && (request.status === 200)) {
var i = JSON.parse([request.responseText]);
console.log(i);
}
else {
alert("no file");
}
答案 0 :(得分:8)
也许您希望此代码段只执行一次,但readyStateChange
事件会多次触发。试试这个:
if (request.readyState===4) {
if (request.status===200) {
var i = JSON.parse([request.responseText]);
console.log(i);
} else {
alert("no file");
}
}
答案 1 :(得分:1)
该语句多次执行,其中一些进入“if”部分,另一些进入“else”部分。这是因为每次请求状态更改时都会触发。
我们需要整个代码才能看到解决问题的方法(不仅仅是“if”片段)。