命名空间 (名称空间)
命名空间一共分为三种:
全局命名空间
局部命名空间
内置命名空间
命名空间
当程序运行时,代码从上至下次读取,遇到变量与值,#他会在内存中
开辟一个空间,存放变量与值的内存地址的对应关系,这样存储变量与值
的对应关系的空间叫做名称空间(命名空间)
局部名称空间
当解释器遇到函数时,他会将函数名存储在内存中,但是对于函数体莫不关心
#当函数执行时,他会通过函数名找到函数体,然后将函数体里面的变量等对应
关系存放在一个#临时开辟的空间中,随着函数的结束,临时的空间关闭,这样的空间叫做临时名称空间(局部名称空间)
作用域
作用域就是作用规范,按照生效范围可以分为全局作用域和局部作用域
全局作用域
包含内置名称空间,全局名称空间,在整个文件的任意位置都能被引用。全局有效
局部作用域
局部名称空间,只能在局部范围内生效
加载顺序:
1 内置命空间(程序运行前加载)
2全局命名空间(程序运行中:从上到下加载)
3局部命名空间(函数运行时:调用时才加载)
取值顺序: 冲内到外 单项找
在局部调用:局部命名空间-->全局命名空间-->内置命名空间
在全局调用: 全局命名空间--->内置命名空间