我从一个java applet获取一个值并将其存储在JS中的变量中。然后我在这个变量上调用一个警告,警告将正确的值输出到屏幕,但是当我在createApp函数中再次调用此变量时,变量打印为未定义,我不知道为什么。任何帮助都会受到谴责
JS代码:
var app = {
notLoaded : true,
dataVar : "hello",
testApplet : function(){
while(app.notLoaded){
if(typeof myApplet.testString != 'undefined')
{
app.notLoaded = false;
this.dataVar = myApplet.testString;
alert(this.dataVar);
//window.open("menuPage.html");
app.createApp();
}
}
},
bluetoothPage : [ 0x10, [this.dataVar, "bluetoothMenu"],
0xA1, ["rpm2", "RPM2", "1500", "0", "3000"],
0xA1, ["rpm3", "RPM3", "1500", "0", "3000"],
0xD0],
createApp : function(){
//document.write(app.bluetoothPage);
app.createPage(menuPage);
app.createPage(app.bluetoothPage);
.........ect } closes object
当菜单写入变量this.dataVar从Hello World变为未定义时,bluetoothPage的所有其他部分都能正常工作
答案 0 :(得分:0)
您解决了范围的问题。变量dateVar是app
的本地变量。让它在全局中访问各种功能。
var appletdataVar="";
var app = {
在app功能中分配值。
this.dataVar = myApplet.testString;
alert(this.dataVar);
appletdataVar=myApplet.testString;
现在您可以在其他功能中访问appletdataVar
。