当我关闭Google API时,我收到“未捕获的TypeError:无法读取属性'DataTable'的未定义”消息。
我想抓住这个未定义的错误并弹出一个窗口,说“Google已被禁用”,但我不确定哪个typeof对象未定义。我正在检查“DataTable”对象,但我很确定这是错误的,因为无论现在窗口是否弹出。
这是我的代码。
var data = new google.visualization.DataTable();
if(typeof DataTable == "undefined"){
window.alert("sometext");
} else {
data.addColumn('string', 'Name');
data.addColumn('string', 'Manager');
data.addColumn('string', 'ToolTip');
data.addColumn('string', 'Type');
data.addColumn('string', 'Code');
data.addColumn('string', 'Aggregation');
data.addColumn('string', 'Stage');
data.addRows([
<xsl:apply-templates select="/*" mode="render"/>
['1','2','3','4','5','6','7']
]);
data.removeRow(data.getNumberOfRows() - 1);
drawDebugFlow(data);
}
答案 0 :(得分:2)
而不是:
if(typeof DataTable == "undefined"){
使用:
if(typeof google == "undefined" || typeof google.visualization == "undefined"){
错误是&#34;未捕获的TypeError:无法读取属性&#39; DataTable&#39;未定义&#34;不是&#34;数据表未定义&#34;