天天看點

JavaScript概述前言正文總結

1.什麼是javascript?

   在浏覽器端執行一種程式設計語言。javascript和java沒有任何關系   ,隻是文法和java相同。也有一些差異。

2.javascript作用?

   a.前端驗證

   b.操作html

   c.ajax核心技術之一

   d.擷取浏覽器的一些相關資訊

3.什麼是ajax?

在浏覽器中運作的js腳本,通過http請求異步地通路伺服器元件,伺服器元件傳回xml檔案或者json格式的資料,js接收後通過解析xml或json來局部重新整理頁面,提高使用者體驗。

JavaScript

     腳本語言:為了縮短傳統程式設計語言從編寫-編譯-運作這個過程而開發的一種簡單類型語言。

與java的差別?

 1.js由NetScape開發,java由SUN公司開發

 2.js是一種弱類型的語言,文法要求很松散;java是一種強類型的語言,文法要求很嚴格。

 3.js功能比較簡單,java語言功能很強大,能執行連接配接資料庫等複雜操作。

js文法特點:

 1.全面支援Unicode編碼

 2.大小寫敏感

 3.文法不嚴格

1.  var 變量名稱

2.  js由浏覽器解析執行,存在浏覽器差異

3.  注釋:// 單行注釋   /*  多行注釋  */

4.  js中可以定義重名變量,如果後面定義的變量沒有初始化則會按照前面定義的輸出

1.  number    數字類型

2.  string    字元串類型

3.  boolean   布爾類型  非0非null為true

1.   undefined  變量沒初始化直接使用

2.   null       隻有顯示聲明null才能使用

3.   NaN        "test"/123

  Function   Object  Array  Date  Math  

   +-*%/   i++ i--

  //算數運算符

  var a = 4;

  var b = "3";

  //alert(a+b); 43

  //alert(a+parseInt(b)); 7

  //alert(a-b);  1

   > < == != ===

   ==  比較值是否相等不會對資料類型進行比較

   === 比較值和資料類型,同時相等才為true

   && || !  & |

   =

   類似java

  分号作為語句結束,可以不寫預設一行為一個語句結束

  if(1){

   alert(a);

  }

 java中  :for(int i;;){}

 js中    :for(var i;;){}

 java中的foreach    for(Object o : objects){}

 js中的foreach      for(var o in objects){}

       1.1  function   函數名稱(參數清單){

    函數體

     }

       1.2  var fun = new Function("a","b"," return a+b;");

       1.3 var fun = function (a,b){

      return a+b;

           }

      注意:Function 類型沒有重載,并且 fun 和fun(1,2)結果完全不同;

      1.1

       1.2  Json 方式建立對象

       1.3   js方式建立一個對象

       1.1  Java中的數組

    1.固定長度,存儲同一類型資料,連續記憶體空間

     js中的數組

           1.可變長,存儲資料不固定,存儲空間不一定連續

   var arr = new Array();

    arr[0]  = 123;

    arr[1] = "hello";

    arr[5] = "aaaa";

       1.2通過JSON的方式建立

   var arr2 = [1,2,3,"hello",,,"aa",];

    alert(arr2.length);// IE中長度為8,火狐7

       數組的API

1.     屬性  length  獲得數組長度

2.    方法

1)          push(參數);  将參數追加到數組的尾部,同時數組長度增加

2)          pop();  删除數組的最後一個元素并且将該元素傳回

3)          shift(); 删除數組中第一個元素,并傳回該元素

4)          unshift(參數); 往數組的最前端添加一個元素,同時數組長度增加

5)          arr.sort(); 數組arr執行sort之後會進行簡單排序,預設隻能排序0-9                  如果排序數字複雜,則必須對sort方法進行修改:    arr.sort(function(a,b){return a-b;});

6)          arr.reverse(); 使目前數組逆序輸出

6)          concat();  将兩個數組進行拼接操作,傳回的是拼接好的數組

              var arr1 = arr.concat(arr2);

7)          join(參數)   通過連接配接符将數組元素連接配接起來,傳回連接配接字元串

               arr2.join("-");

             var str = new String("abc");

1.      屬性  length  獲得字元串長度

2.      方法

1)          charAt(下标) 

2)          indexOf()

3)          substring()

4)          concat()

5)          split()

   var d = new Date();

1)    獲得目前年份    d.getYear()

2)    獲得年份的全稱    d.getFullYear()

3)    獲得月份    d.getMonth()

4)    獲得日期    d.getDate()

5)    獲得星期    d.getDay()

6)    獲得時間    d.getHours()

7)    獲得分鐘    d.getMinutes()

8)    獲得秒鐘    d.getSeconds()

1)       ceil()    向上取整

2)       floor()   向下取整

3)       round()   四舍五入

   事件的 三要素:  事件源/  事件/  監聽器

1.   onmouseover   滑鼠移入事件

2.   onmouseout    滑鼠移出事件

3.   onclick       滑鼠單擊事件

4.   ondblClick    滑鼠輕按兩下事件

   注:       函數   setTimeout("",);

5.   onmousemove   滑鼠的移動事件

6.   onblur        滑鼠失去焦點事件

7.   onfocus       滑鼠獲得焦點事件

8.   onmousedown   滑鼠按下事件

9.   onmouseup     滑鼠彈起事件

10.   onload       頁面載入完成事件

11.   onsubmit      表單送出事件   函數傳回true表單送出

           onsubmit=" return Function"

12.   onchange      失去焦點并且值發生改變事件

13.   onkeyup       鍵盤彈起事件

14.   onkeydown     鍵盤按下事件

15   onscroll 滾動條滾動

16.   onresize視窗變大變小

17.   onmove視窗移動

18.onmousemove事件代碼示例

1.   傳遞event對象到function中

2.this表示目前标簽對象   

  由W3C定義的一組規範一組API  用來操作HTML對象

1)  document.getElementById("id屬性值")  通過ID來獲得對應的标簽對象

2)  document.getElementsByTagName("标簽名稱") 根據标簽名稱來獲得一組标簽,傳回數組對象

3)  document.getElementsByName("name屬性值"); 根據name屬性值來獲得一組标簽,傳回數組對象

4)縮放圖檔代碼示例

1)  父标簽.childNodes    獲得目前标簽的所有孩子節點,傳回數組對象

2)  父标簽.firstChild    獲得第一個孩子節點

3)  父标簽.lastChild     獲得最後一個孩子節點

4)  标簽.nextSibling     獲得下一個兄弟節點

5)  标簽.previousSibling 獲得前一個兄弟節點

1)  document.createElement("标簽名稱")   建立一個對應的标簽對象

2)  document.createTextNode("文本值");    建立一個文本節點對象

3)動态表格代碼示例

1)  父标簽.appendChild(子節點);  将一個标簽追加到父标簽當中

2)  父标簽.removeChild(子節點);  删除子節點

3)  父标簽.insertBefore(newElement,targetElement);  在目标元素之前插入一個新元素

4)  父标簽.replaceChild(newElement,oldElement);    用新元素替換掉舊的元素

 1)标簽.style.樣式屬性 = 屬性值;   h1.style.backgroundColor = "red";

2)  标簽.innerHTML 獲得或者設定元素的标簽體

3)  文本節點.nodeValue 獲得文本節點值

4)  标簽.parentNode  獲得父節點

5)在頁面顯示時間代碼示例

1.  select對象預設存在一個用來存放option對象的數組

2.  select對象.options 獲得option數組對象

3.  select對象.selectedIndex 獲得目前通路的option對象在數組中的位置

4.select對象.options.length=0;清空i數組。            

5.自動填充下拉框代碼示例         

  a.基本知識

    1. 大小寫敏感、辨別符命名前面$ _  字母  開頭,後面接上 字母  數字  _  $

    2.語句後面接上;

 b.變量

  1.javascript 是弱類型資料語言,變量在定義的時候不需要接上 類型。

  2. javascript中使用var 定義變量。

 c.資料類型

  1, 數字類型   number    包括整數和浮點數

   2.字元串       string       "張三"   ‘張三‘     

   3.布爾類型    true/false  非0 /0   非null/null

   4.特殊類型:

                   undefined     為定義 ,兩種情況:

                   1).變量定義之後沒有指派

                   2).變量沒有定義

                  null     為空

                  NaN   不是一個數字 ,非數字。

                  java     123/"1"  這個不行

                  javascript    123/"1"  可以  

                      比如:123/"abc"  NaN

d.類型轉換

e.運算符和表達式

f.流程控制語句和循環語句

 g.函數

1. 使用function來定義函數

2. function   函數名(參數清單){方法體}

 h.Object 對象

 i.數組 

     javascript數組特點:

         1.數組長度可以改變 。

         2.數組中可以存放任意類型的資料。

     數組的建立:

         var  arr=new  Array();

         var  arr=[1,2,3,4];

         parseInt(i);字元串----->number 整數

         parseFloat(i);字元串----->number  小數

         toString();number----->字元串 

   j.String  字元串

   建立方式:

   var   str="hello";

   var   str=new  String("hello");

k.對象

   Date   Math

繼續閱讀