[英]If-statement not working Javascript
好的,這是我的代碼。
.ajax({
type:"POST",
url: "data.php",
data:{
number:number, sprint_count:sprint_count
},
dataType: 'json',
success: function(data){
var count = data.length;
var PlannedSprint = 0;
for(var i = 0; i<count; i++){
var Column = data[i].Column;
if(PlannedSprint !== data[i].PlannedSprint){
$("#div"+Column+"_"+Team).append(data[i].PlannedSprint);
}
var PlannedSprint = data[i].PlannedSprint;
var Team = data[i].Team;
var Element = data[i].Element;
$("#div"+Column+"_"+Team).append(Element);
}
}
});
我希望IF語句能在data[i].PlannedSprint
與PlannedSprint
。 但是由於某種原因,IF語句無法正常工作。 為什么會這樣,if語句怎么了?
我認為它應該像這樣工作:
var PlannedSprint = 0; // Set it to 0
if(PlannedSprint !== data[i].PlannedSprint){ // cause of PlannedSprint being set to 0 before this I believe it should work cause the data[i].PlannedSprint wont be 0.
var PlannedSprint = data[i].PlannedSprint; // And then this will give PlannedSprint a new value for the next loop instead of 0.
但這是行不通的,有人可以解釋!
您正在if
語句中重新定義變量。 只需刪除其中的var
。
var PlannedSprint = 0;
if(PlannedSprint !== data[i].PlannedSprint){
PlannedSpint = data[i].PlannedSprint; // no "var"
我不會詳細說明為什么會發生這種情況,您應該閱讀javascript“提升”以進一步了解這種行為。
如果語句關閉標記(})和var PlannedSprint聲明了2次,可能會丟失
您的if語句永遠不會為真,因為您總是將前一個元素與下一個元素進行比較。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.