day09【JavaScript基礎】

JavaScript

1 概念:一門客戶端腳本語言

  • 運行在客戶端瀏覽器中的。每一個瀏覽器都有JavaScript的解析引擎
  • 腳本語言:不需要編譯,直接就可以被瀏覽器解析執行了

2 功能:

  • 可以來增強用戶和html頁面的交互過程,可以來控制html元素(對html元素的屬性和內容進行修改),讓頁面有一些動態的效果,增強用戶的體驗。

3 JavaScript發展史

  1. 1992年,Nombase公司,開發出第一門客戶端腳本語言,專門用於表單的校驗。命名爲:C–,後來更名爲:ScriptEase
  2. 1995年,Netscape(網景)公司,開發了一門客戶端腳本語言:LiveScript。後來,請來SUN公司的專家,修改LiveScript,命名爲JavaScript
  3. 1996年,微軟抄襲JavaScript開發出JScript語言
  4. 1997年,ECMA(歐洲計算機制造協會),制定出客戶端腳本語言的標準:ECMAScript,就是統一了所有客戶端腳本語言的編碼方式。
  • JavaScript = ECMAScript + JavaScript自己特有的(BOM+DOM)

4 ECMAScript:客戶端腳本語言的標準

  1. 基本語法
    1. 與html結合方式
      1. 內部JS:定義<script>,標籤體內容就是js代碼
      2. 外部JS:定義<script>,通過src屬性引入外部的js文件
      3. 注意:
        1. <script>可以定義在html頁面的任何地方。但是定義的位置會影響執行順序。
        2. <script>可以定義多個
    2. 數據類型
      1. 原始數據類型(基本數據類型):
        *number:數字。整數、小數、NaN(not a number)
        *string:字符串 “a” ‘abc’
        *boolean:true和false
        *null:一個對象爲空的佔位符
        *undefined:未定義。如果一個變量沒有給初始化值,則會被默認賦值爲underfined
      2. 引用數據類型:對象
    3. 變量:一小塊存儲數據的內存空間
      • JavaScript是弱類型語言,在開闢變量空間時,不定義空間將來的存儲數據類型,可以存放任意類型的數據。
      • var 變量名 = 初始化值;
      • typeof運算符:獲取變量的類型
        null運算後得到的是object
    4. 運算符
      1. 一元運算符:只有一個運算數的運算符++、–、+(-)
        在JS中,如果運算數不是運算符所要求的類型,那麼Js引擎會自動類型轉換
        • 其他類型轉number:
          • String轉number:按照字面值轉換,如果字面值不是數字,則轉換爲NaN
          • boolean轉number:true爲1,false爲0。
      2. 算術運算符
        +、-、*、/、%…
      3. 賦值運算符
        =、+=、-=…
      4. 比較運算符
        >、<、>=、<=、===(全等於) 、==
        1. 類型相同:直接比較
          字符串:按照字典順序比較,按位逐一比較,直到得出大小爲止
        2. 類型不同:先進性類型轉換,在比較
          ===:全等於,在比較之前,先判斷類型,如果類型不一樣,則直接返回false
      5. 邏輯運算符
        其他類型轉boolean:
        1. number:0或NaN爲假,其他爲真
        2. string:除了空字符串(""),其他都是真
        3. null&undefined:都是false
        4. 對象:都是true
      6. 三元運算符
        var c = a>b ? 1:0;
    5. 流程控制語句
      在JS中,switch語句可以接受任意的原始數據類型
    6. JS特殊語法:
      1. 語句以;結尾,如果一行只有一條語句,;可省略
      2. 變量的定義使用var關鍵字,也可以不用
        用:定義的變量是局部變量
        不用:定義的變量是全局變量(不建議)
      <!DOCTYPE html>
      	<html lang="en">
      	<head>
      	    <meta charset="UTF-8">
      	    <title>99乘法表</title>
      	    <style>
      	        td{
      	            border: 1px solid;
      	        }
      	
      	    </style>
      	
      	    <script>
      	
      	        document.write("<table  align='center'>");
      	        //1.完成基本的for循環嵌套,展示乘法表
      	        for (var i = 1; i <= 9 ; i++) {
      	            document.write("<tr>");
      	            for (var j = 1; j <=i ; j++) {
      	                document.write("<td>");
      	
      	                //輸出  1 * 1 = 1
      	                document.write(i + " * " + j + " = " + ( i*j) +"&nbsp;&nbsp;&nbsp;");
      	
      	                document.write("</td>");
      	            }
      	            /*//輸出換行
      	            document.write("<br>");*/
      	
      	            document.write("</tr>");
      	        }
      	
      	        //2.完成表格嵌套
      	        document.write("</table>");
      	
      	    </script>
      	</head>
      	<body>
      	
      	</body>
      	</html>
      
  2. 基本對象
    1. Function:函數(方法)對象
      1. 創建:
        *var fun = new Function(形式參數列表,方法體)//不常用
        *function 方法名稱(形式參數列表) {方法體}
        *var 方法名 = function(形式參數列表) {方法體}
      2. 方法:
      3. 屬性:length:代表形參的個數
      4. 特點:
        1. 方法定義是,形參的類型不用寫,返回值類型也不寫
        2. 方法是一個對象,如果名稱相同,會覆蓋
        3. 在JS中,方法的調用只與方法的名稱有關,和參數列表無關
        4. 在方法聲明中有一個隱藏的內置對象(數組),arguments,封裝所有的實參
        5. 調用:
          方法名(實際參數列表);
    2. Array:數組對象
      1. 創建
        *var arr = new Array(元素列表);
        *var arr = new Array(默認長度);
        *var arr = [元素列表];
      2. 方法:
        join(參數):將數組中的元素按照指定的分隔符拼接爲字符串
        push():向數組的末尾添加一個或更多元素,並返回新的長度。
      3. 屬性:length:數組的長度
      4. 特點:數組元素的類型可變、數組長度可變
    3. Boolean
    4. Date:日期對象
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章