有时,在firebug中,我在逐步遍历javascript代码时无法深入研究变量表达式。有时这是一种流感行为,我会刷新页面,下一次我可以向下钻。然而,对于一些变量,我永远无法做到。我举一个例子:
我正在使用google可视化api,我有以下代码:
var row = tableChart1.getSelection();
var test5 = queryWrapper1;
var dt = test5.currentDataTable;
var dv = test5.currentDataView;
var x = dv.getViewRowIndex(row[0].row);
var y = dt.getRowProperties(row[0].row);
alert(test5.currentDataTable.getRowProperty(row[0].row,"ticker"));我无法深入研究的变量是y。下面是getRowProperties()的文档(下面是链接链接到文档):
返回:对象返回指定行的所有属性的映射。注意,属性对象是通过引用返回的,因此在检索到的对象中更改值会改变DataTable中的值。
对于firebug为什么不让我检查返回对象的属性,我们将不胜感激。谢谢。
更新:我使用的是firebug 1.7.3。
这里还有我看到的画面:

发布于 2011-09-24 18:46:23
我试着用Google的一些示例代码来测试它。这不是Firebug的问题。从调用object返回的dt.getRowProperties(row[0].row);实际上是空的。getRowProperty上的文档提到,如果不存在这样的属性,则返回null。如果没有属性,则似乎会为相关函数getRowProperties返回一个空对象。
行、列或单元格的属性被某些可视化用于更改它们的行为,如在文件中解释。您必须使用相关函数显式地设置这些属性。
如果您想测试它,要证明它不是Firebug,请修改代码如下:
var row = tableChart1.getSelection();
var test5 = queryWrapper1;
var dt = test5.currentDataTable;
var dv = test5.currentDataView;
var x = dv.getViewRowIndex(row[0].row);
// Add this bit
dt.setRowProperty(row[0].row, 'foo', 'bar');
var y = dt.getRowProperties(row[0].row);
alert(test5.currentDataTable.getRowProperty(row[0].row,"ticker"));https://stackoverflow.com/questions/7540807
复制相似问题