javascript

1、javascrript三大核心

     ecmaJavaScript、bom、dom

2、匿名函數立即調用

     (function(){

     alter("匿名函數立即執行")

     } )()

3、JavaScript不支持java中的重載,後定義的同名方法會覆蓋前面定義的方法

4、手動模擬JavaScript

     <script type = "text/javascript">

     function add(){

     var sum = 0;

     for(var i= 0;i < arguments.length;i++){

     sum += arguments[i];

     }

     return sum;

     }

     alter(add(2,3));

     alter(add(5,6,10));

     </script>

5、函數的遞歸使用

     在函數內部自己調用自己,有終止條件,否則會出現死循環。

      <script type = "text/javascript">

      funtion jieCheng(num){

      if(num == 1){

     return 1;

     }

     return jieCheng(num-1)*

     }

      </script>

6、javascript數組特點

     a、數組長度可以動態改變

     b、同一個數組可以存儲不同數據類型

     c、數據的有序集合

     d、每個數組都有一個length屬性,表示的是數組中的元素的個數

7、數組的創建有兩種方式:字面常量方式和構造函數

     var colors = ["black","red","blue"];

     var colors = new Arrray("black","red","blue");

     //for...in遍歷數組,是一種精準的迭代語句,可以用來枚舉對象的屬性和數組的元素

     for(var index in arr){console.log(arr(i));}

    //foreach循環遍歷數組

    arr.forEach(function(element,index)){alter(element);}

    //數組常用方法

    toStirng(); //只能使用,連接

    join();//可以使用指定字符進行連接

    //棧操作

    push;pop;

    //隊列操作

     unshift添加元素到,shift移除隊列頭元素

8、Cookie,也用Cookies某些網站爲了辨別用戶身份、進行session跟蹤而存儲在用戶本地終端上的數據(通常經過加密)

     Cookie是由瀏覽器將document對象的Cookie屬性提供給javascript的,可以由javascript對其進行控制,但這並不是javascript本身的屬性。

    Cookie是存在於用戶硬盤的一個文件,這個文件通常對應於一個域名,當瀏覽器再次訪問這個域名時,這個Cookie就發揮作用了。不同瀏覽器的cookie不共享,同一瀏覽器的不同網頁共享。

9、Cookie的作用

a 保存用戶登錄狀態。cookie可以設置過期時間,當超過時間期限後,自動消失。

b 跟蹤用戶行爲。

c 定製頁面。

d 創建購物車。

cookie的缺陷

a cookie可能被禁用。

b 可能是瀏覽器相關的。不同瀏覽器之間保存的cookie是不能互相訪問的

c 可能被刪除。cookie是保存在用戶硬盤上的一個文件,可能被刪除。

d 安全性不夠高。所有的cookie都是以純文本的形式記錄與文件中的,因此如果要保存用戶名密碼等信息時,最好先經過加密處理。

cookie的構成

a 名稱:一個唯一確定cookie的名稱。不區分大小寫,cookie的名稱必須是經過URL編碼的。

b 值:儲存在cookie中的字符串值,必須經過URL編碼。

c 域:cookie對於域是有效的,那麼對於其所有子域都是有效的。

d 路徑:對於指定域的那個路徑應向服務器發cookie

e 失效時間:表示cookie何時應該被刪除的時間戳

f 安全標誌:指定後,cookie只有在使用ssl連接時才發送到服務器

cookie的存儲

a 服務器端通過http響應頭Set—Cookie來通知瀏覽器存儲cookie。客戶端通過javascript去存儲cookie。javascript操作cookie需要通過document的cookie屬性來完成。

讀取cookie仍然是通過document的cookie屬性,不過字符串需要我們自己解析

刪除cookie

刪除cookie的原理非常簡單,只要把超時時間設置爲0,就會立即刪除了

10、DOM操作

DOM是針對HTML和XML文檔的一個API(應用程序編程接口)。DOM描繪了一個層次化的節點樹,允許開發人員添加、移除和修改頁面的某一部分。

W3C DOM標準分爲3部分;

core DOM-針對任何結構化穩當的標準模型

XML DOM-針對XML文檔的標準模板

HTML DOM-針對HTML穩當的標準模型


document節點是每個文檔節點的根節點

document傑斯按下面只有html節點,我們稱爲文檔元素。

-文檔元素是文檔的最外層元素,其他元素都包含在文檔元素中

-一個文檔只能有一個文檔元素,在html中文檔元素永遠是元素。

DOM樹中,html文檔中每一處標記都可以用樹中的一個節點表示

11、DOM共有12種節點類型

12、document對象,可以當成全局變量來使用

13、js事件

       就是用戶或者瀏覽器執行的某種操作

14、事件流:描述的是從頁面中接收事件的順序

包括兩種:冒泡流和捕獲流

IE的事件流叫做事件冒泡,即事件開始時由最具體的元素接收,然後逐級向上傳播到較爲不具體的節點(文檔)

冒泡流指事件像冒泡排序一樣是從底層逐漸像上層傳播的

捕獲流是由NetScape Communicator團隊提出的靈位一種事件流。事件捕獲的思想是不太具體的節點應該更早接收到事件,而最具體的節點應該是最後接收事件。

15、DOM2級事件規定事件流包括三個階段:事件捕獲階段、處於目標階段、事件冒泡階段

16、HTML中指定事件處理程序有兩個缺點:

a 存在時差問題,比如函數定義在文檔尾部,在爲解析函數之前就點擊了按鈕,則會出現錯誤

b HTML代碼和javascript代碼緊密耦合,如果要更換事件的處理程序,要同時改動html代碼和js代碼

17、DOM0級別事件處理程序

將一個函數賦值給事件處理程序。這時事件處理程序可以看成是元素對象的方法,事件處理程序就是在元素的作用域中運行(this就是指代這個對象)

18、load和ready事件的區別:

ready表示文檔結構已經加載完成(不包含圖片等非文字媒體文件)

load表示頁面包含圖片等文件在內的所有元素都加載完成

19、鼠標事件

由於移動設備沒有鼠標,所以與電腦端有一些不同之處。移動設備儘量使用移動端事件,而不要使用鼠標事件

不支持dbclick雙擊事件。在移動設備中雙擊瀏覽器窗口會放大畫面

單機元素會觸發mousemove事件

兩個手指放在屏幕上且頁面隨手指移動而滾動時會觸發mousewheel和scroll事件


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章