我有一個IF函數在FOR循環未識別大於0的Javascript IF語句在函數
的代碼是下面的任何其它的整數值不承認除0以外的整數,並與IF函數問題是: 如果(X == 0){curr_year = curr_year;}
<script type = "text/javascript">
var r_array = [
'Row 1',
'Row 2',
'Row 3'
];
var months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];
var array_months = months.concat(months);
var x = parseInt(0);
var text_r = "";
var row = "";
var report = "";
var d = new Date();
var curr_year = d.getFullYear().toString().substr(2,2); // 2017 = 17
var prior_year = (d.getFullYear()-1).toString().substr(2,2);
var curr_month = d.getMonth(); // Jan = 0
for (var i_row = 0; i_row < r_array.length; i_row++) {
report = r_array[i_row]
text_r += ("<tr><th>" + report + "</th>"+ this_row(report) +"</tr>");
row = "";
}
function this_row(report) {
x = 0;
for (i_col = curr_month; i_col < curr_month + 13; i_col++) {
if (x==0) {
curr_year = curr_year;
}
else {
curr_year = prior_year;
}
row += "<td><a href = '"+ curr_year +"' target='blank'>" + array_months[i_col] + "-"+ curr_year +"</a></td>";
x++;
}
curr_year = d.getFullYear().toString().substr(2,2);
return row;
}
</script>
,其中x = 0的第一列中的年顯示瞭如預期 然而 '17',當x被改變爲1 ,第二列中的年份不顯示爲'17'
我已經在第二個腳本中使用相同的變量複製了FOR循環,但在函數之外,它工作正常。因此,我想知道問題是否與在函數中運行FOR循環有關?
任何幫助將不勝感激!
你希望行在調用this_row()時結束了什麼? – domenicr
你得到的輸出是什麼,你期望的是什麼? –
使用上面顯示的代碼(x = 0),第一列中的年份顯示爲預期的'17'。但是,當if函數更改爲(x = 1)時,我期望SECOND列中的年份顯示爲'17',但它不顯示 – OneBigEgg