码迷,mamicode.com
首页 > 编程语言 > 详细

java python js作用域的对比

时间:2019-05-04 17:29:17      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:def   javascrip   声明   代码块   Python一   bsp   function   创建   时报   

1  java的作用域以代码块为作用域 也就是{}

2 python中是以函数作为作用域:比如

  def func():

    if 1==1:

      name="a"

    print(name)

  func()  不会报错  因为Python是以函数作为作用域

3 js和Python一样是以函数作为作用域的

 

ps:(1) 函数的作用域在函数未被调用之前 已经创建

  (2)函数的作用域存在作用域链 并且也是在被调用前创建(函数套函数)如:function func(){

                                        function inner(){}

                                     }

  (3) 函数内 局部变量提前声明 

  

a = "aa";

function func(){
  var a = "abc";
      
  function inner(){
        var a = "cba";
        console.log(a);
    }  
}    

从内层往外找  直到最外层找不到时报错

  

java python js作用域的对比

标签:def   javascrip   声明   代码块   Python一   bsp   function   创建   时报   

原文地址:https://www.cnblogs.com/Samuel-Leung/p/10809016.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!