0
我很難搞清楚這段粗體標記的代碼。可一些解釋我的那些行請奇怪的遞歸代碼繪製圖表
function growBars() {
var barStartX = 0;
var barStartY = 0;
var barHeight = 0;
var barValue = 0;
<!-- ********** Start Unable to understand -->
barValue = parseInt(chartData.bars[i].value);
barHeight = (barValue * chartHeight/maxValue)/numSteps * idxStep;
barStartX = chartMargin + chartAxisSpace + (i * (barWidth + barMargin)) + barMargin;
barStartY = chartMargin + (chartHeight - barHeight);
drawBar(barStartX, barStartY, barWidth, barHeight);
}
if (idxStep < numSteps) {
idxStep++;
setTimeout('growBars()', growSpeed);
}
} < -- * * * * * * * * * * * * * End till here-- >
function drawBar(barX, barY, barW, barH) {
context.fillStyle = '#00c';
context.fillRect(barX, barY, barW, barH);
context.shadowOffsetX = 3;
context.shadowOffsetY = -3;
context.shadowBlur = 3;
context.shadowColor = 'rgba(200, 200, 200, .3)';
context.strokeStyle = '#000';
context.lineWidth = 1;
context.strokeRect(barX, barY, barW, barH);
}
正如你可以看到上面的代碼繪製在圖上吧。我無法理解的是使用這個遞歸函數的方式。那段代碼是做什麼的?
如果你修復了縮進,我想你會發現它不是遞歸的。 –
這裏還有一個'}';我認爲這是一個錯字。 – Pointy
什麼遞歸函數?你的意思是drawBar?我不確定你明白'遞歸'意味着什麼...... –