js声明变量作用域会提前】的更多相关文章

var s = 1; function test() { console.info(s); var s = 2; console.info(s); } test(); >>>undefined >>>2…
JS 声明变量的三种方式 (1)使用变量步骤:a.声明-->b.赋值-->3.调用 正确用法: <script type="text/javascript"> // 方式一:声明和赋值不分离 var correctUsage = "正确使用变量的方式一"; alert(correctUsage); //能够弹出来该变量所对应的值 // 方式二:声明和赋值分离 var correctUsage2; correctUsage2 = "正…
  js声明变量的三种方式及作用域 CreateTime--2017年9月11日17:19:11 Author:Marydon 一.参考链接 本篇文章的创作灵感来源于博主-奔跑的铃铛关于js中const,var,let区别的介绍,特此鸣谢!!! 二.基础知识 UpdateTime--2017年9月12日15:18:28 1.使用变量的步骤:a.声明-->b.赋值-->3.调用 正确用法: <script type="text/javascript"> // 方式…
作为一名菜鸟的我,每天学点的感觉还是不错的.今天学习闭包的过程中看到作用域与作用域链这两个概念,我觉得作为一名有追求的小白,有必要详细了解下. 变量的作用域 就js变量而言,有全局变量和局部变量.这里我觉得这个按字面意思理解就行了.......下面举个例子 var message = "今天我做的糯米蒸排骨"; //定义一个全局变量 function doL(){ var ss = "侠客行很好看"; //定义一个局部变量 alert(message); //输出&…
js不支持块级变量作用域,而是包含它们的函数的作用域, 例如: function query() { ; ; i < ; i++) { var b = i; } return b + a; } var q = query(); alert(q);// 9 + 1 = 10 也包括在Catch块 function test() { var a= 'a', b = []; b.push(a); try { throw 'exception'; } catch (e) { a = 'c'; } b.p…
学习JS时候,声明变量是必须的,(虽然在没有声明变量的情况下,对某一变量赋值后, js自动认为已进行声明,但为了严谨,建议还是要进行声明)声明方式有传统的 var a: var b: var c: 也有精简的 ==>var a,b,c: 当需要声明变量且进行赋值时,可以这样 ==>var a =1 :var b = 2 var c: 等价于var a=1,b = 2,c: 注意事项: 1.单独声明时候,虽然“:”不写也没关系,但是为了后面的编程,建议养成每一句结束都带上“:”(分号<英&…
function aa(flag) { // var test // 变量提升,函数最顶部 if(flag) { var test = 'hello man' } else { //此处访问 test 值为 undefined console.log(test) } //此处访问 test 值为 undefined } aa(false); //结果 undefined test被声明了 但是没有被赋值 总结: 用var声明变量时,变量提升到函数最顶部或全局最顶部. function aa(fl…
原文链接:http://my.oschina.net/u/2000201/blog/514384 本人今天在编写工具类时,无意之间发现,在Java的Swith语句的case语句中声明局部变量时出现了一个奇怪的问题. 废话少说,先列出例子,一看便知. 情景一:case 1中声明变量x,case 2中不能再声明变量x switch (1) { case 1: int x = 1; break; case 2: int x = 2;// 编译器会提示:Duplicate local variable…
声明变量特殊情况    情况 说明 结果 var age ; console.log (name); 只声明 不赋值 undefined console.log(name) 不声明 不赋值  直接使用报错 name= 20; console.log (name); 不声明 只赋值 20                   1. 由字母(A-Za-z).数字(0-9).下划线(_).美元符号( $ )组成,如:usrAge, num01, _name    2. 严格区分大小写.var app;…
(function(){ a = 5; alert(window.a); var a = 10; alert(a); })(); 结果: undefined 10 代码等同于下面 var a = undefined; //定义全局变量 (function(){ var a; // a = 5; // a = 5;但是被局部变量覆盖,这时候的a是局部变量 alert(window.a); //a = undefined; 试图访问全局变量a,可是并没有赋值 a = 10; //依然是局部变量a a…