0

我正在使用谷歌可视化图表 api,但我相信这是我犯的某种 javascript 错误。我用数字填充这个数组:

visibleRows = [];

并使其成为逗号分隔的字符串:

visibleRows.join(',');

console.logging visibleRows 在此之后给出:

0,1,3

但是当我将 visibleRows 输入函数时,下一行:

pieViewHits.setRows([visibleRows]);

我收到错误:无效的行索引 0,1,3 应该在 [0-3] 范围内,但是如果我将上述所有代码替换为:

pieViewHits.setRows([0,1,3]);

它完美地工作!有任何想法吗?

4

2 回答 2

0

visibleRows已经是一个数组,因此您不必将其作为[visibleRows](在方括号内)传递。

改变

pieViewHits.setRows([visibleRows]);

pieViewHits.setRows(visibleRows);

而且我认为你不需要使用,visibleRows.join(',');

于 2012-11-01T11:47:00.853 回答
0

[0,1,3]是一个包含三个数字的数组

visibleRows.join(',');返回一个逗号分隔的字符串。你没有在任何地方分配它,所以它什么都不做。

[visibleRows]是一个包含第二个数组的数组,该数组依次包含三个数字。如果在字符串上下文中使用,它将被展平为逗号分隔的字符串。

该函数需要一个包含三个数字的数组,而不是包含另一个数组的数组或包含逗号分隔字符串的数组。

只需传递数组而不将其包装在另一个数组中或joining 它。

visibleRows = [];
visibleRows.push(0);
visibleRows.push(1);
visibleRows.push(3);
pieViewHits.setRows(visibleRows);
于 2012-11-01T11:51:14.640 回答