zoukankan      html  css  js  c++  java
  • 函数作用域和声明提前

    函数作用域是指在函数内声明的变量在函数体内始终是可见的,这意味着在函数体内,变量在声明之前就可以直接。javascript这个特性被称为声明提前,
    即不管是在函数体内的for,if等语句块中定义的变量,都会被提前至函数顶层定义(function t(){var i;...})


    //
    与java等语言的变量的块级作用域不同的是javascript是函数作用域 function testScope(o){ var i=0; //var j;所有定义在for,if的变量和这种其实是一个意思,javascript会把下面定义的变量提前至变量顶层 console.log(j); //console.log(m); if(typeof o=="object"){ var j=1;//j会被提前至函数顶层定义,var j
    for(var k=0;k<10;k++){//k会被提前至函数顶层定义,var k
    console.log(k); } console.log(k); }
    //var m=0;//k会被提前至函数顶层定义,var k
    console.log(j); } testScope({x:
    1});
        var scope="global";
        function f(){
            console.log(scope);//undefined        
         var scope="local";//javascript中,会把变量拿到函数最顶层定义 console.log(scope);//local }//等价于下面 f(); function ff(){ var scope; console.log(scope);//undefined
    scope
    ="local"; console.log(scope);//local }//等价于上面 ff();
  • 相关阅读:
    [NOI2009]管道取珠
    Rebalance再均衡
    生产者分区写入策略
    Kafka事务
    幂等性
    消费者组
    Kafka中的重要概念
    偏移量offset
    服务注册和发现的意思,Spring cloud如何实现?
    负载平衡的意义
  • 原文地址:https://www.cnblogs.com/changshuo/p/3341913.html
Copyright © 2011-2022 走看看