当前位置: 首页 > 编程笔记 >

javascript定义变量时加var与不加var的区别

古彦
2023-03-14
本文向大家介绍javascript定义变量时加var与不加var的区别,包括了javascript定义变量时加var与不加var的区别的使用技巧和注意事项,需要的朋友参考一下

一、外部的为全局,内部的为局部变量。

二、加var为局部变量(在方法内),不加var为全局变量(当方法内有一次使用后)


<script type="text/javascript"> 

var golbe="global"; 

test(); 

function test(){ 

     var local="local"; 

    document.write(golbe); 

    document.write(local); 

}

document.write(golbe); 

document.write(local);

</script>

在上面的test方法内,当把local变量的var去掉后,local就变成了全局变量,但是在局部不使用local,则这个local作为全局是无效的。

为了验证这点,我把test方法内部唯一使用local变量的这句代码注释掉.发现在外部也打印不出来了。

总结:全局变量可以不声明var 函数内变量必须声明var,在定义全局变量时加或不加var关键字没什么影响;但在定义局部变量时如果不加var关键字javascript解释程序会将其解释为全局变量。

 类似资料:
  • 本文向大家介绍javascript定义变量时有var和没有var的区别探讨,包括了javascript定义变量时有var和没有var的区别探讨的使用技巧和注意事项,需要的朋友参考一下 我们先来看一段代码 有过C++或Java编程经验的人可能会说:“这程序,死定了,变量竟然在引用了该变量的函数后边定义,bug会灭掉你的。”放在浏览器上运行一下,结果怎样?完美运行!接下来我们就说一下这是咋回事——有v

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

  • 本文向大家介绍js中let和var定义变量的区别,包括了js中let和var定义变量的区别的使用技巧和注意事项,需要的朋友参考一下 javascript 严格模式 第一次接触let关键字,有一个要非常非常要注意的概念就是”javascript 严格模式”,比如下述的代码运行就会报错: 错误信息如下: 解决方法就是,在文件头添加”javascript 严格模式”声明: let和var关键字的异同 声

  • 问题内容: 我正在尝试学习科特林。是什么 ,并在科特林相比,Java的? 在Java中: 转换后显示: 问题答案: 和是可以用来声明变量(和属性)的两个关键字。区别在于,using 提供了一个只读变量,与Java中使用关键字相同。 Kotlin中的约定是在任何时候都可以使用,并且只有在知道要在某个地方更改其值时才应该使用a 。 请参阅有关定义局部变量和声明属性的官方文档。 是Java中不存在的可见

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

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

  • 本文向大家介绍JS变量中有var定义和无var定义的区别以及es6中let命令和const命令,包括了JS变量中有var定义和无var定义的区别以及es6中let命令和const命令的使用技巧和注意事项,需要的朋友参考一下  之前我们在写js代码的时候都知道可以用var定义全局变量和局部变量,也可以省略var,而且在非严格模式下不会报错,但是并不知道两者的区别... 简单测试下可以知道定义的x和y