zoukankan      html  css  js  c++  java
  • JavaScript语法基础

    学习玩Java语言后,现在准备学习JavaWeb,虽然,还有一个Java项目在那没完成,但还是准备边学习JavaScript,边做项目。

    在下面是在学习过程中的总结,目的是为了方便以后复习和查询。

    --------------------------------------华丽的分割线--------------------------------------------

    开始看看一个简单的JavaScript程序:

    复制代码
    <html>
    <head>
    <title>Greet</title>
    <!-- 开始编写JavaScript代码 -->
    <script type = "text/javaScript">
    // 由按钮单机事件调用的函数
           function greet()
    {
    var name = document.getElementById("name") ;
    if (name)
    alert(
    "hello" + name.value) ;
    }
    </script>
    </head>
    <body>
    <!-- 用于输入消息文本框 -->
    <input type = "text" id ="name"/>
    <!-- 调用greet方法的按钮 -->
    <input type = "button" value = "Greet" onclick = "greet()"/>
    </body>
    </html>
    复制代码

    也可以将上面的JavaScript代码嵌入到HTML中:

    复制代码
    <!--greet.js-->
    function greet()
    {
    var name = document.getElementById("name") ;
    if (name)
    alert("hello" + name.value) ;
    }
    复制代码

    在HTML中用<script>标签来引用greet.js

    <script type = "text/javascript" src = "greet.js">
    </script>


    变量:

      在JavaScript中有下面两种定义变量的方法:

      1、为在变量第一次赋值时定义。

        name = "name" ; 

        alert ( name ); 

      2、使用var关键字定义变量。

        var name = "name" , age = 23 ;  // 定义两个变量用 “,” 分开

        alert (name) ;

      注意:

      JavaScript变量名需要遵循两个规则:

       1 、 第一个字符必须是字母 或 下划线 或 "$" 。

       2 、其他的字符可以使字母、下划线、美元符号、任何数字 。 

    原始类型:

      JavaScript有5种原始类型:(每一种原始类型都定义了自身的取值范围和表达式。

        1、Undefined 类型(只有一个值,undefined ) ;   

        alert(typeof st) ; // 显示 undefined
        if (typeof st == "undefined" )
        alert ( "st未定义" ) ;

          如果变量是使用var来定义,并且为初始化,这个变量的值就是undefined 。

        同时可以直接用: if (st == undefined )形式来判断变量类型。否则不可以。

        2、Boolean类型。

          只有两个值 true 或 false ,也可以用1和0表示。(这和java有点不一样)

        3、Number 类型。

          可以表示32位整数,也可以是64位浮点型。整数可以表示成八进制和十六进制。

          var iOctalNum = 0213 ; //八进制必须要0开头

          var iHexNum = 0xfff  ; // 十六进制必须要0x开头。

          但是所有的数学运算返回的都是十进制结果。 

          alert(iOcatlNum) ; // 输出的是十进制数 139 ; 

          alert(iHexNum) ;  // 显示的是十进制数 。 

        4、String 类型。

      可以用typeof运算符来获得一个变量的类型。

      var intValuer = 22 ; 

      var stringValuer = "abc" ;

      alert (typeof intValuer) ; // 输出number 

      alert (typeof stringValuer) ; //输出string 


      typeof 运算符可以返回一下5个值:

      1、undefined : 变量是Undefined 类型 。 

      2、boolean :

      3、number : 

      4、string :

      5、object : 变量是引用型或者NUll类型 。

     函数和函数调用 :

       基本语法如下: 

    function funName(arg0 , arg1 , ... argN)
    {
    statments ;
    }

        JavaScript中的函数不能重载,如果函数名相同后面的函数就会覆盖前面的。

    在JavaScript中,函数还可以使用argument对象实现动态参数,也就是在声明函数时并不需要定义参数,如:

        

    复制代码

        function sum()
        {
          var _sum = 0 ;

          for (var i = 0 ; i < arguments.length ;++ i)
              _sum += arguments[i] ;
          return _sum ;
        }

    复制代码

        在JavaScript中可以用Function建立任何函数,语法如下:

           var funName = new Function(arg1 , arg2 , ... , argN , functionBody ) ; 

        如 :     var sum = new Function("num1" , "num2" , "return num1 + num2 ") ; 

            alert (sum(-1,-1)) ; 

     

    类和对象:

            在JavaScript中有一些预定义的类,如Object、Array、String、Number 等 。 

         下面有三种方法自定义类:

      1、 动态添加类成员(工厂方式) 

      

    复制代码
    // 对多个对象共享的方法 。
    function study ()  
    {
      alert(this.name + "学习中!") ; 
    }
    // 创建一个student对象的工厂函数,可以共享study方法 。
    funciton createStudent(id , name , age)
    {
      var student = new Object  ;  // 创建一个对象变量 
      student.id = id ;
      student.name = name ; 
      student.age = age ; 
      student.study = study ; 
      retrun student ; 
    }
    复制代码

       2、构造函数方式

        

    复制代码
    // 多个对象共享的study方法。
    funciont study()
    {
      alert(this.name + "学习中!")  ; 
    }
    //Student类的构造方法。
    function Student(id , name , age )
    {
      this.id = id ;
      this.name = name ; 
      this.age = age  ;
      this.study = study ; 
    }
    var student_1 = new Student("01" , "xxx" , 100 )  ;
    student_1.study() ; 
    复制代码

      3、原型方式 

       该方法使用了对象的prototype属性,可以把prototype属性看成是创建新对象所依赖的原型。

      

    复制代码
    //建立一个空的构造函数 。
    function Student()
    {
    }
    //使用prototype为Student类添加属性。
    Student.prototype.id = '12' ;
    Student.prototype.name = 'xxx' ;
    Student.prototype.age = '20' ;
    //使用prototype添加方法 。
    Student.prototype.study = function()
    {
    alert(this.name + "学习中!") ;
    };
    var student_1 = new Student() ;
    复制代码

      使用原型方式的另一个好处就是可以为已经存在的类添加新的成员。

    url:http://www.cnblogs.com/jbelial/archive/2012/03/04/2379314.html

  • 相关阅读:
    spring boot 配置时区差别
    Java 中序列化与反序列化引发的思考?
    Http 状态码总结
    Springboot
    ConcurrentHashMap 实现缓存类
    C#基础(二)拆箱与装箱,循环与选择结构,枚举
    C#基础知识(一)自己总结的。。。
    贪吃蛇大作战双人版加强版完整代码加详细步骤,不懂问博主 啦啦啦。
    C#数组随机生成四个随机数
    C#添加背景音乐
  • 原文地址:https://www.cnblogs.com/zhaofei/p/3539704.html
Copyright © 2011-2022 走看看