在 Javascript 中创建全局变量时是否需要指定对象类型
Do I need to specify object type when creating globals in Javascript?
我有以下代码:
var oTable = $('#dataTable').dataTable({
...
我想将 oTable 声明为全局,但我有点困惑。使用 javascript 如何执行此操作,当我将其声明为全局时,我是否必须指定对象类型?
简单地说,你没有。您只需像以前一样声明变量,并在需要的任何地方使用它。
当您想在函数中使用全局变量时,只需键入其名称,而无需先声明它。
例
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'
}
您可以像这样全局声明它,没有任何问题。Var 是泛型类型,可以为其分配任何类型。
var oTable = $('#dataTable').dataTable({......
function someFunction()
{
}
全局变量实际上不是变量,而是全局对象的属性。可以按如下方式显式附加它们:
window.oTable = $('#dataTable').dataTable({});
window
是指浏览器 JavaScript 中的全局对象。
除非该声明在函数内部,否则oTable
已经是一个全局变量。此外,Javascript是动态类型的,这意味着你不能定义变量类型。
有关 Javascript 中全局变量的更多信息,请查看这篇文章。
有关静态类型与动态类型的更多信息,请查看此问题。
不能声明类型。
除非变量是使用 var
在函数中定义的,否则它将是全局变量。
相关文章:
- 字符串对象类型或基元类型也是如此
- 如何在dojo中查询对象类型
- 对象类型scrollTo
- 在 Javascript 中创建全局变量时是否需要指定对象类型
- JavaScript:创建新对象类型的方法
- 如何获取对象类型
- FormData()只发送对象类型的多文件
- 获取对象类型
- 依赖对象类型检查Javascript似乎是多余的
- 访问javascript中对象类型的数组成员
- 比较对象类型时是否需要第三个=
- 如何在 Google 闭包编译器中指定对象类型的@param @return
- 窗口对象通过对象类型测试,但 hasOwnProperty 导致错误
- Javascript 空对象类型
- 何时有时将对象类型定义为将实例绑定方法镜像为构造函数上的静态实用程序函数很有用
- 在下拉列表中使用多个对象类型为数据网格提供筛选
- 为什么 String.prototype 中的“this”指的是对象类型,而不是字符串类型
- 自定义对象/类型 Javascript
- 在 Javascript 中获取对象类型的名称
- 两种 JavaScript 对象类型之间的差异