zoukankan      html  css  js  c++  java
  • JS作用域

    一、变量的作用域

    变量的作用域无非就是两种:全局变量和局部变量

    js中函数内部可以直接取全局变量。

    var t = 1900;
    function f() {
    	alert(t);
    }
    f(); //1900

    另一方面,在函数外部自然无法读取函数内的局部变量。

    function f() {
    	var t = 1900;
    }
    f();
    alert(t); //t is not defined

    需要注意,在函数内部声明变量的时候,一定要使用var,如果不用的话,实际上声明了一个全局变量

    function f() {
    	t = 1900;
    }
    f();
    alert(t); //1900

    二、如何从外部读取局部变量

    如果非要得到函数内函数内的局部变量,正常情况下,是不行的,但可以变通方法实现

    在函数的内部 再定义一个函数

    function out() {
    			var t = 1900;
    			function inner() {
    				alert(t);
    			}
    			inner();
    		}
    		out(); //1900


    三、Example

    function outerFun() {
    	var a = 0;
    	alert(a);
    }
    var a = 4;
    outerFun();
    alert(a); //0  4

    var name = "hello";
    function f() {
    	var name = "world"
    }
    f();
    alert(name); //hello ,内容并没有改变



  • 相关阅读:
    两数之和
    dict用法
    xgboost
    常见报错
    四、ABP 学习系列
    Apache Htpasswd生成和验证密码
    ABP 学习系列
    Gradle 配置
    ArcGis教程
    在线排程设置生成器Quartz
  • 原文地址:https://www.cnblogs.com/itmyhome/p/4131343.html
Copyright © 2011-2022 走看看