为什么80%的码农都做不了架构师?>>>   

javascript中的变量的作用域不同于java/c的变量规则。

1、在java/c中,如果有一个全局变量与一个局部变量重名,那么在局部变量的作用域中,局部变量会覆盖掉全局变量的值。当离开局部变量的作用域后,全局变量又会重新起作用。也就是说,当有局部变量存在时,程序中起作用的是局部变量的值。

而局部变量的作用域是:if / for / while ...等代码块的 {} 中,出了 {},局部变量就不存在了。(java中代码块 {}中的内嵌的局部变量不能相同。如:2个for中不能出现相同的 int i 的变量定义。)

public class Test {int i=5;public static void main(String[] args) {Test test = new Test();test.test();//局部变量覆盖全局变量test.test2();//没有局部变量,所以全局变量可以起作用。}//测试局部变量private void test(){int i=10;System.out.println(i);}//测试全局变量private void test2(){System.out.println(i);}
}

2、在javascript中,局部变量的作用域是在 function(){} 中的整个 {} 。只要是在方法中定义的变量,在整个方法中就可以使用,不管变量是定义的function内的任何地方。变量的作用域划分与java/c并不相同。当然,此时的局部变量同样会将方法外的变量覆盖。

<script type="text/javascript">
var i = 0;
function test(){alert(i); // 输出 undefined。因为在方法中已经对i进行了定义,而还没有赋值。for(var i=0; i<3; i++);alert(i); //输出 3 。因为在for中定义的var i是可以在整个方法 test 中起作用的。
}
</script>

转载于:https://my.oschina.net/pding/blog/748923

javascript 变量作用域相关推荐

  1. JavaScript变量作用域如何像多个级别的政府一样

    by Kevin Kononenko 凯文·科诺年科(Kevin Kononenko) JavaScript变量作用域如何像多个级别的政府一样 (How JavaScript variable sco ...

  2. JavaScript变量作用域和内存问题(js高级程序设计总结)

    1,变量 ECMAScript和JavaScript是等同的吗?个人认为是否定的.我的理解是这样的,ECMAScript是一套完整的标准或者说协议,而JavaScript是在浏览器上实现的一套脚本语言 ...

  3. 实例浅析javascript变量作用域

    全局域变量在局部可见,局部变量在全局不可见 var global_value = 'global value';  func(); console.log(local_value); function ...

  4. javascript变量作用域一点总结

    前言:javascript里变量作用域是个经常让人头痛抓狂的问题,下面通过10++个题目,对经常遇到又容易出错的情况进行了简单总结,代码样例很短很简单 题目一 var name = 'casper'; ...

  5. javascript变量声明 及作用域

    javascript变量声明提升(hoisting) http://openwares.net/js/javascript_declaration_hoisting.html 可能要FQ一下 java ...

  6. mysql变量作用域,变量作用域 | 类型、变量和值 | JavaScript 权威指南

    变量作用域 由 学院君 创建于1年前, 最后更新于 1年前 版本号 #2 724 views 0 likes 0 collects 变量的作用域指的是程序源码中定义这个变量的区域,全局变量具有全局作用 ...

  7. 深入理解JavaScript的变量作用域

    在学习JavaScript的变量作用域之前,我们应当明确几点: a.JavaScript的变量作用域是基于其特有的作用域链的. b.JavaScript没有块级作用域. c.函数中声明的变量在整个函数 ...

  8. JavaScript的变量作用域深入理解(转)

    在学习JavaScript的变量作用域之前,我们应当明确几点:  a.JavaScript的变量作用域是基于其特有的作用域链的.  b.JavaScript没有块级作用域.  c.函数中声明的变量在整 ...

  9. 深入理解JavaScript的变量作用域(转)

    在学习JavaScript的变量作用域之前,我们应当明确几点: a.JavaScript的变量作用域是基于其特有的作用域链的. b.JavaScript没有块级作用域. c.函数中声明的变量在整个函数 ...

最新文章

  1. 你需要掌握的三种编程语言
  2. 进程线程005 SwapContext函数分析
  3. 图像缩放的双线性内插值算法的原理解析
  4. 图片上传组件_配置Django-TinyMCE组件 实现上传图片功能
  5. sqlite可视化工具推荐
  6. 计算机无法识别读卡器怎么办,电脑无法识别读卡器怎么办
  7. 201671010127 2016—2017—2 Java学习周结
  8. 全卷积神经网络 图像语义分割实验:FCN数据集制作,网络模型定义,网络训练(提供数据集和模型文件,以供参考)
  9. vb.net 功能f8键事件_UG软件F8快捷键和笔记本电脑F8快捷键冲突的解决方法
  10. python局域网传输文件
  11. 给大家推荐一个资源库https://www.awesomes.cn/
  12. 《2022爱分析·银行数字化厂商全景报告》发布,菊风连续入选「视频银行」优质代表厂商
  13. AlertManager实现webhook告警(使用Postman测试)
  14. Geany无法识别中文怎么办
  15. 2021-03-17 RK3288 接PHILIPS 4K显示器HDMI开机概率性不显示的问题
  16. 基于LINUX下ESP_IDF开发环境搭建安装问题总结
  17. Qt之自定义属性Q_PROPERTY
  18. 2021年焦作市一中高考成绩查询,2021年焦作高考状元名单公布,焦作文理科状元是谁多少分...
  19. 中文技术文档的写作规范-转{阮一峰}
  20. 班级花名册xlsx文件CSV写入

热门文章

  1. leetcode97 交错字符串
  2. 链表最终总结【数据结构】
  3. 深度学习(05)--典型CNN结构(VGG13,16,19)
  4. Java提高篇 —— Java内部类详解
  5. VLC详细的使用说明以及配置说明综合示范实例精通VLC开发
  6. 病从口入 这样吃小心癌症找上门
  7. 互联网,可预见的未来
  8. Notepad++ 6.0 发布,优化了大文件加载性能
  9. 集合:按元素的中文属性排序
  10. 1分钟看懂:java 项目中 VO 、DTO、Entity,各自是在什么情况下应用的