[導入]variable's scope in Javascript

          Posted on 2006-03-16 11:19 BlueO2 閱讀(491) 評論(0)  編輯  收藏 所屬分類: AJAX

          See DFlying's finding:
          Yep,No Block Scope concept in JavaScript.Only the global and function Scope.You can use "var" to declare a global variable and use "var" agian to declare a homonymous variable in a function.In the function ,the second one works.But there is no Block scope.
          Check the codes below,it's a demo for "NO BLOCK SCOPE"
          function test(o) {var i = 0; // i is defined throughout functionif (typeof o == "object") {var j = 0; // j is defined everywhere, not just blockfor(var k = 0; k < 10; k++) { // k is defined everywhere, not just loopdocument.write(k);

          }document.write(k); // k is still defined: prints 10}document.write(j); // j is defined, but may not be initialized}

          But,You still need to care javascript's FUNCTION SCOPE.Also see code snippet:
          var scope = "global";

          function f( ) {alert(scope); // Displays "undefined", not "global"var scope = "local"; // Variable initialized here, but defined everywherealert(scope); // Displays "local"}f( );
          Right,thought you alert(scope) first and then define a new functin scope variable scope.However,once you define a function scope vriable,it will hide the global variable in the function body,whatever the definition order.



          文章來源:http://blueoxygen.dflying.net/3/archive/68_variables_scope_in_javascript.html

          posts - 29, comments - 3, trackbacks - 0, articles - 0

          Copyright © BlueO2

          主站蜘蛛池模板: 平谷区| 饶平县| 米易县| 崇信县| 资源县| 保定市| 郎溪县| 永春县| 缙云县| 洪洞县| 博客| 汉源县| 洮南市| 大荔县| 商城县| 金秀| 湟源县| 清远市| 东港市| 增城市| 阜新| 奈曼旗| 静安区| 上思县| 梁河县| 马边| 东丽区| 和林格尔县| 定襄县| 南和县| 客服| 长武县| 墨脱县| 四会市| 友谊县| 鄂尔多斯市| 凤城市| 凤翔县| 济阳县| 铁岭县| 清镇市|