如何在另一个函数中访问javascript自定义全局变量
我正在开发phonegap android应用程序。我试图在javascript和android java类之间建立通信 为了进行交流,我在android主活动中使用了addJavaScriptInterfaceMethod。这样我就可以在javascript中使用java对象和方法 以下是Java代码:如何在另一个函数中访问javascript自定义全局变量,java,javascript,android,cordova,Java,Javascript,Android,Cordova,我正在开发phonegap android应用程序。我试图在javascript和android java类之间建立通信 为了进行交流,我在android主活动中使用了addJavaScriptInterfaceMethod。这样我就可以在javascript中使用java对象和方法 以下是Java代码: public class Activity extends DroidGap { @Override public void onCreate(Bundle
public class Activity extends DroidGap
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setIntegerProperty("loadUrlTimeoutValue", 60000);
super.loadUrl("file:///android_asset/www/jq3.html");
MapTablesWrapper table = new MapTablesWrapper();
super.appView.addJavascriptInterface(new MapTablesWrapper(), "tables");
}
}
在javascript中:下面的代码没有打印表值。它发出未定义的警报
var tableName = tables.getTableName();
function(){
alert(tableName);
}
如果我在函数中声明了var table,那么打印tableName和下面的代码是
function(){
var table = tables.getTableName();
alert(tableName);
}
但是我想在函数外部声明变量,并想在函数内部使用该变量。您可以这样做
var global = {
table : null
};
function()
{
global.table = tables.getTableName();
alert(global.table);
}
您可以将global重命名为JS文件名,这样就可以使用
fileName.table
访问当前文件中的所有函数以及任何其他JS文件中的该变量,这里是global.tableTryvar global={table:tables.getTableName};function(){alert(global.table);}
您可以将global
重命名为您的JS文件名。感谢您的回复。我在我的应用程序中使用了相同的代码。它无法识别table变量。我收到一个错误,指出referenceError:表未定义