浅谈 JavaScript 中定义变量时有无 var 声明的区别
来源:互联网 发布:mac mini 换ssd 编辑:程序博客网 时间:2024/05/21 06:03
浅谈 JavaScript 中定义变量时有无 var 声明的区别
前段时间回答了一个关于定义变量时使用关键字 var 与否的区别,总结回顾一下。
1.在函数作用域内 加 var 定义的变量是局部变量,不加 var 定义的就成了全局变量。
使用 var 定义:
var a = 'hello World'; function bb(){ var a = 'hello Bill'; console.log(a); } bb() //'hello Bill' console.log(a); //'hello world'
不使用 var 定义:
var a = 'hello World'; function bb(){ a = 'hello Bill'; console.log(a); } bb() //'hello Bill' console.log(a); //'hello Bill'
2.在全局作用域下,使用 var 定义的变量不可以 delete,没有 var 定义的变量可以 delete。也就说明隐含全局变量严格来说不是真正的变量,而是全局对象的属性,因为属性可以通过 delete 删除,而变量不可以。
3.使用 var 定义变量还会提升变量声明,即
使用 var 定义:
function hh(){ console.log(a); var a = 'hello world'; } hh() //undefined
不使用 var 定义:
function hh(){ console.log(a); a = 'hello world'; } hh() //'a is not defined'
0 0
- 浅谈 JavaScript 中定义变量时有无 var 声明的区别
- javascript定义变量时有var和没有var的区别探讨
- javascript变量声明有误var的区别
- javascript中定义变量var,const,let简单的区别
- JavaScript中let和var定义变量的区别
- JavaScript中变量声明有var和没var的区别
- JavaScript中声明变量时 带var和不带var的区别
- JavaScript中变量声明有var和没var的区别示例介绍
- javascript var声明变量与不声明的区别
- js变量中有var定义和无var定义的区别,es6中let命令和const命令
- JavaScript中定义变量加var和不加var的区别
- javaScript中使用var和不是用var定义变量的区别
- struct--------定义时有无变量声明对文件包含的影响(vs2008)
- javascript中的var定义的变量和没有var定义变量的区别
- javascript中必须使用var声明局部变量的情况
- JavaScript中声明变量有无var
- Javascript- 声明变量时用"var"与不用"var"的区别
- javascript中使用var定义变量的预编译效果
- 外连接
- DroidPlugin框架简单应用
- android:maxLines和android:ellipsize
- 01 移动的通信制式(点点入门,视频+笔记)
- 基于Zookeeper的服务注册与发现
- 浅谈 JavaScript 中定义变量时有无 var 声明的区别
- android的strings整理脚本
- html5中canvas线段绘制太阳花
- Intents and Intent Filters
- CSU 1769: 想打架吗?算我一个!所有人,都过来!(3)
- 编程之美2.21 只考加法的面试题
- TCP重传与确认机制
- [leetcode] 118. Pascal's Triangle
- hbase 协处理器