0

我有以下代码:

var oTable = $('#dataTable').dataTable({
 ...

我想将 oTable 声明为全局,但我有点困惑。使用 javascript 我该如何做到这一点,当我将其声明为全局时,我是否必须指定对象类型?

4

5 回答 5

1

简单地说,你没有。您只需像以前一样声明变量,并在需要的任何地方使用它。

当您想在函数中使用全局变量时,您可以简单地键入它的名称,而无需先声明它。

例子

var MyVar = $('#dataTable').dataTable(); // This is a global variable. Notice that you don't specify a type, as JavaScript is not strongly typed

function MyFunction() {
  var InternalVar = MyVar; // Here you take the value from the global variable, i.e. the datatable
}

function MyOtherFunction() {
  var MyVar = 'This is a string';

  var InternalVar = MyVar; // Here you take the value from the LOCAL variable, which you declared just above, i.e. 'This is a string'
}
于 2012-08-08T15:08:48.953 回答
1

您可以像这样全局声明它,没有任何问题。Var 是泛型类型,任何类型都可以分配给它。

var oTable = $('#dataTable').dataTable({......

function someFunction()
{

}
于 2012-08-08T15:09:02.143 回答
1

全局变量实际上不是变量,而是全局对象的属性。它们可以显式附加如下:

window.oTable = $('#dataTable').dataTable({});

window指浏览器javascript中的全局对象。

于 2012-08-08T15:13:59.950 回答
0

除非该声明在函数内部,否则它oTable已经是一个全局变量。此外,Javascript 是动态类型的,这意味着您不能定义变量类型。

有关 Javascript 中的全局变量的更多信息,请查看这篇文章。
有关静态与动态类型的更多信息,请查看问题。

于 2012-08-08T15:09:41.887 回答
0

不能声明类型。

除非该变量是在使用它的函数中定义的,否则var它将是一个全局变量。

于 2012-08-08T15:10:19.130 回答