当前位置: 首页 > 面试题库 >

JavaScript使用'var'声明变量是可选的吗?

单于奇略
2023-03-14
问题内容

“ var”是可选的吗?

myObj = 1;

如同 ?

var myObj = 1;

我发现它们都可以通过我的测试工作,我认为这var是可选的。那正确吗?


问题答案:

他们的意思不同。如果使用var变量,则在范围内声明变量(例如,在函数中)。如果不使用var,则变量会在作用域的各个层中冒出气泡,直到遇到给定名称的变量或全局对象(如果在浏览器中是窗口,则为窗口),然后将变量附加到该变量。这与全局变量非常相似。但是,仍然可以使用删除它delete(很可能是其他人的代码也未能使用var)。如果var在全局范围内使用,则该变量是真正的全局
变量,无法删除。

在我看来,这是javascript最危险的问题之一,因此不建议使用,或者至少在警告时发出警告。原因是,很容易忘记,var并且偶然有一个绑定到全局对象的通用变量名。这会产生奇怪且难以调试的行为。



 类似资料:
  • 本文向大家介绍JavaScript变量声明var,let.const及区别浅析,包括了JavaScript变量声明var,let.const及区别浅析的使用技巧和注意事项,需要的朋友参考一下 var声明变量的作用域限制在其声明位置的上下文中 let 声明的变量只在其声明的块或子块中可用,var的作用域是整个封闭函数 在 ECMAScript 2015 中,let绑定不受变量提升的约束,这意味着le

  • 问题内容: 如果声明变量而不使用“ var”,则变量始终变为GLOBAL。 在函数内部声明全局变量是否有用?我可以想象在某个事件处理程序中声明一些全局变量,但这有什么用呢?更好地使用RAM? 问题答案: 不,没有RAM好处或类似的好处。 w3schools谈论的是我所说的“内隐全球性恐怖” 。考虑以下功能: 看起来很简单,但是由于线路上的错字,它返回,而不是。并创建一个带有输入错误名称的全局变量:

  • 本文向大家介绍浅析JavaScript声明变量,包括了浅析JavaScript声明变量的使用技巧和注意事项,需要的朋友参考一下 JavaScript的变量声明语句无论出现在何处,都会先于其他代码首先被执行。使用var关键词声明变量的作用域是当前的执行上下文,有可能是外围函数,或者,当变量声明在函数体之外时,则为全局变量。 定义在函数体外的都属于全局变量,定义在函数体内的属于局部变量。这里的定义是指

  • 本文向大家介绍JavaScript声明变量时为什么要加var关键字,包括了JavaScript声明变量时为什么要加var关键字的使用技巧和注意事项,需要的朋友参考一下 在JavaScript中,var用来声明变量,但是这个语法并不严格要求,很多时修改,我们可以直接使用一个变量而不用var声明它。 诸如此类。这有一个问题,比如说在代码中的某一行,我想使用的一个已声明的变量x,结果由于打字或者拼写错误

  • 问题内容: 我玩ES6已有一段时间了,我注意到虽然用声明的变量被按预期悬挂了… …声明或似乎存在一些问题的变量: 和 这是否意味着使用或不声明的变量被吊起?这到底是怎么回事?是否有任何区别,并在此问题? 问题答案: @thefourtheye的正确说法是在声明这些变量之前 无法访问 它们。但是,这要复杂得多。 是否用或不声明变量?这到底是怎么回事? 所有声明 (,,,,,) 被“悬挂” 在Java

  • 本文向大家介绍浅谈JavaScript中定义变量时有无var声明的区别,包括了浅谈JavaScript中定义变量时有无var声明的区别的使用技巧和注意事项,需要的朋友参考一下 前段时间回答了一个关于定义变量时使用关键字var与否的区别,总结回顾一下。 1.在函数作用域内 加var定义的变量是局部变量,不加var定义的就成了全局变量。 使用var定义: 不使用var定义: 2.在全局作用域下,使用v