美文网首页
第4章 变量、作用域和内存问题

第4章 变量、作用域和内存问题

作者: Mark_Xu | 来源:发表于2015-07-26 10:34 被阅读5次

    基本类型

    赋值是建立副本,两个变量值并无关联
    Undefined
    Null
    Boolean
    Number
    String

    引用类型

    赋值变量是引用同一个对象,改变其值是改变引用对象的值
    引用类型可以动态建立、修改、删除其属性和方法

    参数

    函数参数是函数的局部变量,按基本类型传递值,实际是建立副本,传递后在函数内部改变,不会影响外部变量的值。

    检测类型

    alert ( typeof a ); 检测基本类型,引用类型返回object (Safari 5和 Chrome7之前版本正则表达式返回function)
    alert ( person instanceof Object );//变量是Object 吗? 用来检测引用类型

    执行环境

    执行环境定义了变量或函数有权访问其他数据,决定了它们各自的行为。

    var color = "blue";
    function changeColor () {
      var anotherColor = "red";
      function swapColor () {
        var tempColor = anotherColor;
        anotherColor = color;
        color = tempColor;
        //这里可以访问 Color、anotherColor 和 tempColor
      }
     //这里只可以访问 Color、anotherColor 
    }
     //这里只可以访问 Color
    changeColor();
    

    延长作用域链

    try-catch语句的catch
    with语句

    没有块级作用域

    { }是不能建立作用域的,特别注意 if for中声明的var i 的作用域。

    相关文章

      网友评论

          本文标题:第4章 变量、作用域和内存问题

          本文链接:https://www.haomeiwen.com/subject/qrlyqttx.html