javascript定义变量时带var与不带var的区别分析


Posted in Javascript onJanuary 12, 2015

本文实例分析了javascript定义变量时带var与不带var的区别。分享给大家供大家参考。具体分析如下:

直接看实例里说明:

<script language="javascript" type="text/javascript">

var abc=89;//带var,表示全局变量

function test(){

 var abc=80;//在函数内部,如果不带var,表示使用函数外全局变量;带上var,表示新定义一个全局变量

}

test();

window.alert(abc);

</script>

严格来说:函数体内不带var,并不是指定义一个变量,而是进行变量赋值,即var abc;abc=8。在函数体内如果进行赋值 abc=80(不带var),实际过程是这样的——该语句先在函数体内查找变量abc,如果找不到,它会往上在函数体外继续查找变量abc,如果还是找不到,最后没有办法,只能在函数体外定义变量var abc。

所以,为什么

function test(){

 abc = 80;

}

能够在函数外部直接调用变量abc,也就是这么一个原因。

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
让FireFox支持innerText的实现代码
Dec 01 Javascript
一次失败的jQuery优化尝试小结
Feb 06 Javascript
JavaScript Memoization 让函数也有记忆功能
Oct 27 Javascript
JS获取整个页面文档的实现代码
Dec 15 Javascript
javascript实现div的拖动并调整大小类似qq空间个性编辑模块
Dec 12 Javascript
js有序数组的连接问题
Oct 01 Javascript
微信小程序  Mustache语法详细介绍
Oct 27 Javascript
如何处理JSON中的特殊字符
Nov 30 Javascript
javascript原生封装一个淡入淡出效果的函数测试实例代码
Mar 19 Javascript
详解Puppeteer 入门教程
May 09 Javascript
ES6函数实现排它两种写法解析
May 13 Javascript
浅谈vue在html中出现{{}}的原因及解决方式
Nov 16 Javascript
jQuery实现友好的轮播图片特效
Jan 12 #Javascript
js函数内变量的作用域分析
Jan 12 #Javascript
Jquery api 速查表分享
Jan 12 #Javascript
js常用系统函数用法实例分析
Jan 12 #Javascript
javascript使用appendChild追加节点实例
Jan 12 #Javascript
jQuery实现瀑布流的取巧做法分享
Jan 12 #Javascript
js在指定位置增加节点函数insertBefore()用法实例
Jan 12 #Javascript
You might like
php 删除记录同时删除图片文件的实现代码
2010/05/12 PHP
PHP编译configure时常见错误的总结
2017/08/17 PHP
Prototype的Class.create函数解析
2011/09/22 Javascript
JQuery操作三大控件(下拉,单选,复选)的方法
2013/08/06 Javascript
jquery高级编程的最佳实践详解
2014/03/23 Javascript
Javascript基础教程之break和continue语句
2015/01/18 Javascript
jQuery制作仿Mac Lion OS滚动条效果
2015/02/10 Javascript
javascript+HTML5的Canvas实现Lab单车动画效果
2015/08/07 Javascript
jquery.Callbacks的实现详解
2016/11/30 Javascript
javascript监听页面刷新和页面关闭事件方法详解
2017/01/09 Javascript
薪资那么高的Web前端必看书单
2017/10/13 Javascript
node.js支持多用户web终端实现及安全方案
2017/11/29 Javascript
AngularJs分页插件使用详解
2018/06/30 Javascript
微信小程序仿知乎实现评论留言功能
2018/11/28 Javascript
JS中数组实现代码(倒序遍历数组,数组连接字符串)
2019/12/29 Javascript
JavaScript复制变量三种方法实例详解
2020/01/09 Javascript
django 2.0更新的10条注意事项总结
2018/01/05 Python
Python实现PS滤镜特效Marble Filter玻璃条纹扭曲效果示例
2018/01/29 Python
Python简单爬虫导出CSV文件的实例讲解
2018/07/06 Python
Python多线程编程之多线程加锁操作示例
2018/09/06 Python
Python PIL读取的图像发生自动旋转的实现方法
2019/07/05 Python
使用PyTorch训练一个图像分类器实例
2020/01/08 Python
基于Python制作一副扑克牌过程详解
2020/10/19 Python
史上最全面的Java面试题汇总!
2015/02/03 面试题
德尔福集团DELPHI的笔试题
2012/02/22 面试题
幼儿园园长自我鉴定
2013/10/22 职场文书
2014年十一国庆节活动方案
2014/09/16 职场文书
干部作风建设心得体会
2014/10/22 职场文书
2015年小学生自我评价范文
2015/03/03 职场文书
个人工作总结怎么写?
2019/04/09 职场文书
小学记事作文之200字
2019/08/06 职场文书
修改MySQL的数据库引擎为INNODB的方法
2021/05/26 MySQL
解决SpringBoot跨域的三种方式
2021/06/26 Java/Android
MySQL 服务和数据库管理
2021/11/11 MySQL
MYSQL中文乱码问题的解决方案
2022/06/14 MySQL
TaiShan 200服务器安装Ubuntu 18.04的图文教程
2022/06/28 Servers