示例字符串输出
[{v:5, f:'Week 1'}, {v:10, f:'Week 2'},{v:15, f:'Week 3'},{v:20, f:'Week 4'},{v:25, f:'Week 5'}]
function weekAxis(){
var ticks = '';
var week_count = <?php echo $chart ?>; //count number of weeks
for(i=0; i<=week_count; i++){
var tick_str[] = '{v:'+week_count, f:'Week' +week_count}';
}
return ticks;
}
基于周数的期望输出
如果week_count
= 5
,
var ticks = [{v:5, f:'Week 1'}, {v:10, f:'Week 2'},{v:15, f:'Week 3'},{v:20, f:'Week 4'},{v:25, f:'Week 5'}]
如果week_count
= 4
,
var ticks = [{v:4, f:'Week 1'}, {v:8, f:'Week 2'},{v:12, f:'Week 3'},{v:16, f:'Week 4'}]
如果week_count
= 6
,
var ticks = [{v:6, f:'Week 1'}, {v:12, f:'Week 2'},{v:18, f:'Week 3'}, {v:24, f:'Week 4'}, {v:30, f:'Week 5'}, {v:36, f:'Week 6'}]
可以看到,v
的值与count本身相乘,并循环直到达到周计数。同样,Week
文本将具有递增的计数器值。
如何使以上字符串基于周数传递?
试试这个:你可以初始化一个数组并将map压入其中。在for循环中,创建带有count和i
变量的map,如下所示。
function weekAxis(){
var ticks = new Array();
var week_count = 4; //count number of weeks
for(i=1; i<=week_count; i++){
var tick_str = {};
tick_str['v'] = ( week_count * i );
tick_str['f'] = 'Week ' + i ;
ticks.push(tick_str);
}
return ticks;
}
alert(JSON.stringify(weekAxis()));
应该可以了
function weekAxis(){
var ticks = '',week_count = 5,tick_str = [];
for(i=0; i<week_count; i++){
var ex = {
v:week_count*(i+1),
f:'Week'+week_count
};
tick_str.push(ex);
}
return JSON.stringify(tick_str);
}