zoukankan      html  css  js  c++  java
  • Java Web基础回顾 —Javascript

    Javascript是脚本语言,浏览器解析读取代码是逐行地执行脚本代码;相对于传统编程语言,会在执行前对所有代码进行编译。

    1. Javascript定义在函数外面的变量一定是全局变量; 定义在函数内的变量,如果声明了var,那该变量就是局部变量,如果不声明var,那该变量就是全局变量。如果重新声明 JavaScript 变量,该变量的值不会丢失。

    2. with 语句:对象操作语句。为一段程序建立默认对象。

    3. for…in语句:重复执行指定 对象的所有属性。

    4. 默认对象:
      1)Date对象
      2)Array对象

    5. 事件:
      1)js中为某个对象空间绑定时间通常可以采取两种手段

        <input type=“button” onclick=“clickHandler();”>
        <input type=“button” id=“button1”>
       
       <scrip type=“text/javascript”>
       var v = document.getElementById(“button1”);
       v.onclick=clickHandler;
       </script>
      
    6. 在javascript中,函数function就是对象。

    7. 在javascript中,没有方法(函数)重载的概念。

    8. 在javascript中有一个Function对象,所有自定义的函数都是Function对象类型的。Function对象接收的参数都是字符串类型的,其中最后一个参数就是要执行的函数体,而前面的参数则是函数真正需要接收的参数。

    9. 在javascript中,每个函数都有一个隐含的对象arguments,表示给函数实际传递的参数。arguments有一个length属性,可以得出实际函数的长度。

    10. 每一个函数对象都有一个length属性,表示该函数期望接收的参数格式,它与函数的arguments不同。

    11. javascript中有五种原始数据类型:Undefined、Null、Boolean、Number、String。

      • Undefined数据类型的值只有一个:undefined
      • Null数据类型的值只有一个:null
      • Boolean数据类型有两个:true 、 false
    12. typeof是一元运算符,有五个返回值:undefined、boolean、number、string、object。

    13. 在javascript中, 如果函数没有声明返回值,那么会返回undefined

    14. null与undefined的关系:undefined实际上是从null派生出来的。

    15. 强制类型转换:在javascript中有3中强制类型转换:Boolean(value), Number(value), String(value)。

    16. 在javascript中,可以动态添加对象的属性,也可以动态删除对象的属性。

    17. javascript中定义对象:
      *对象可以以name:value方式来定义:var person={firstname:"Bill", lastname:"Gates", id:5566}

      var object = new object();
      object.name = “name”;
      object[“password”] = “password”;
      delete object.name;
      
    18. javascript定义对象第二种方式:
      var object = {name:”name”, password:”password”};

    19. javascript数组的sort方法,会先将待排序的内容转换为字符串(toString()方法),按照字符串的先后顺序进行排序。

    20. javascript最佳定义对象的方式:使用原型+构造函数的方式来定义对象,对象之间的属性互不干扰,各个对象间共享同一个方法。

      function person(){
      this.username = new Array();
      this.password=“123”;
      }
      Person.prototype.getInfo=function(){
      alert(this.username+”, “+this.password);
      }
      var p = new Person();
      var p2 = new Person();
      p.username.push(“zhangsan”);
      p2.username.push(“lisi”);
      p.getInfo();
      p2.getInfo();
      
    21. javascript的继承:

      • 对象冒充:
        最重要的三行:
        this.method=Parent;
        this.method(username);
        delete this.method;

      • call方法:call方法是Function对象中的方法,因此我们定义的每个函数都拥有该方法。通过函数名来调用call方法,call 方法的第一个参数会被传递给函数中的this,从第二个参数开始,逐一赋值给函数中的参数。
        Parent.call(this,username);

      • apply方法:Parent.call(this, new Array(username));

      • 原型链prototype chain方式:无法给构造函数传递参数。

      • 混合方式:

          function Parent(username){
          this.username= username;
          }
          Parent.prototype.sayName=function(){
          alert(this.username);
          }
          function Child(username,password){
          Parent.call(this,username);
          }
          Child.prototype = new Parent(); //这样就继承了parent的所有方法。
        
    22. javascript的编码规范:一般不希望外界访问的成员和方法名以下划线开始。

  • 相关阅读:
    利用DTrace实时检测MySQl
    改进MySQL Order By Rand()的低效率
    RDS for MySQL查询缓存 (Query Cache) 的设置和使用
    RDS For MySQL 字符集相关说明
    RDS for MySQL 通过 mysqlbinlog 查看 binlog 乱码
    RDS for MySQL Mysqldump 常见问题和处理
    RDS for MySQL Online DDL 使用
    RDS MySQL 表上 Metadata lock 的产生和处理
    RDS for MySQL 如何使用 Percona Toolkit
    北京已成为投融资诈骗重灾区:存好骗子公司黑名单,谨防上当!
  • 原文地址:https://www.cnblogs.com/nextStep/p/6694853.html
Copyright © 2011-2022 走看看