zoukankan      html  css  js  c++  java
  • Javascript深入浅出(二)

    链式作用域
    父对象的所有变量,对子对象都是可见的,
    但子对象的所有变量,对父对象都是不可见的
     
    闭包
    定义在一个函数内部的函数,方便读取其他函数内部变量,且这些变量的值始终保持在内存中
    优点:灵活方便,封装
    缺点:内存消耗很大,IE中可能导致内存泄露
    function f1(){
        var n=999;
        function f2(){
          alert(n);
        }
        return f2;
      }
      var result=f1();
      result(); // 999
     
    执行上下文就是在执行代码之前,把将要用到的所有的变量都事先拿出来,有的直接赋值了,有的先用undefined占个空
    全局作用域的上下文环境数据内容为:
    普通变量(包括函数表达式)
    undefined
    函数声明
    赋值
    this
    赋值
    局部作用域的上下文环境数据内容为:
    参数
    赋值
    arguments
    赋值
    自由变量的取值作用域
    赋值
    eval()
     
    执行上下文栈
    全局上下文环境 调用函数,产生函数上下文环境 函数调用完成,函数上下文环境消除 全局上下文环境
    处于活动状态的执行上下文环境只有一个
     
    一切(引用类型)都是对象,对象是属性的集合
    console.log(typeof $); // function console.log($.trim(" ABC ")); // function
     
    对象都是通过函数创建的
    var obj = { a: 10, b: 20 };
    var obj = new Object();
    obj.a = 10;
    obj.b = 20;
     
    function Fn() {}
    var fn1 = new Fn();
     
    var arr = [5, 'x', true];
    var arr = new Array();
    arr[0] = 5;
    arr[1] = 'x';
    arr[2] = true;
     
    语法糖意指那些没有给计算机语言添加新功能,而只是提供更实用的编码方式,有益于更好的编码风格,更易读的语法
     
    作用域包括全局作用域和局部作用域,没有块级作用域
     
    作用域链在当前作用域查找自由变量查找无果,继续逐层查找各作用域,直至全局作用域的路径
     
    自由变量在某作用域中使用,却没有在该作用域中声明的变量
     
    面向对象编程(OOP)
    Prototype模式(用于构造函数)
    function Animal(){
        this.species = "动物";
      }
    function Cat(name,color){
    this.name = name;
    this.color = color;
    }
    Cat.prototype.type = '猫科动物';
    Cat.prototype.eat = function(){alert('吃鱼');}
    var cat1 = new Cat('大黄','yellow');
    var cat2 = new Cat('大毛','brown');
    alert(cat1.type);
    cat2.eat();
    Cat.prototype = new Animal();
    Cat.prototype.construtor = Cat;
    alert(cat1.species);
  • 相关阅读:
    MySQL(十五)之数据备份中mysqldump详解
    MySQL(十四)之数据备份与还原
    MySQL(十三)之MySQL事务
    Flink MysqlSink 简单样例
    Flink FileSink 自定义输出路径——StreamingFileSink、BucketingSink 和 StreamingFileSink简单比较
    Flink FileSink 自定义输出路径——BucketingSink
    【翻译】Flink Joining
    Flink 异步IO访问外部数据(mysql篇)
    【翻译】Flink 异步I / O访问外部数据
    Flink 自定义source和sink,获取kafka的key,输出指定key
  • 原文地址:https://www.cnblogs.com/crisis66/p/8183198.html
Copyright © 2011-2022 走看看