zoukankan      html  css  js  c++  java
  • 制作火种之前的简单基础讨论变量作用域

    几乎每一本关于js的书,都要讲讲作用域,而且篇幅都不小,我把我个人总结的两点贡献给大家,希望大家尽量以简洁的方式认识作用域,实际作用域遵从两个法则,我个人管这两个法则一个叫平下法,另一个叫顺序法。先说第一个,一个var他的有效作用域就是平行之间引用和向下引用是正确的,简单的代码实例:

    function a(){

    do something;

    }

    //----------平行引用---------

    function b(){

    a();//这个引用是有效的 因为a和b平行

    }

    //-------向下引用------------

    function b(){

    function c(){

    a();//这也是正确的 因为function c这是向下(闭包)函数(如果不理解闭包的读者会比较难懂)

    }

    }

    第二个是顺序法则

    以上是function 遵循平下法则

    要是var呢 他不仅遵循平下法则,还要遵循顺序法则,反之function 不遵循顺序法则。

    示例代码:

    function b(){

    var a="first var";

    Response.Write(a);//服务器端这是正确的

    alert(a);//客户端这是正确的

    }

    function b(){

    Response.Write(a);//这是不正确的

    var a=“first var”;

    }

    //-------举一反三-------

    function a(){

    b();//这是一定不行的 因为他是var

    var b=function(){

    do something;

    }

    }

    顺便再说一句

    局部变量优先级最高,我估计这不用我说,有经验的读者可以绕过以上内容,不过呢我是曾经被各种书的作用域曾经说的迷迷糊糊,有的资料更是说的很玄!我希望能用最简单的方法把复杂问题说清。

    我的qq:674096197,欢迎一起探讨asp javascript 不在线请弹屏一下!
  • 相关阅读:
    python print()输出指定小数位数的数字
    P35 线性回归两种求解方式总结
    P34 线性回归的策略、优化、案例
    P33 线性回归的定义及矩阵的运算
    P53 trainable 学习率的调整,梯度爆炸
    P52 线性回归的原理的复习及实现
    P51 可视化学习
    P50 运算API介绍
    P49 张量的定义以及数据
    P48 会话的run()方法
  • 原文地址:https://www.cnblogs.com/329521/p/1654655.html
Copyright © 2011-2022 走看看