Web Worker
基本內容
單線程與多線程
Worker能夠模擬多線程的效果
定義 - 運行在後臺的javascript
注意 - 不能使用DOM
在Worker中只能使用javascript中的ECMA
目前主流瀏覽器都支持Worker,除IE8以前
Worker提供API
檢測當前瀏覽器是否支持Worker
if( typeof(Worker) !== "undefined" ){
說明當前瀏覽器支持Web Worker
}else{
說明當前瀏覽器不支持Web Worker
}
建立WebWorker對象
new Worker(worker文件)
Worker對象
onmessage事件
postMessage()方法
terminate()方法
Web存儲API
基本內容
數據倉庫 - 用於存儲數據
HTML5存儲系統
localStorage(本地存儲) - 替代Cookie
sessionStorage(會話存儲) - 替代Session(相似於內存)
sessionStorage
setItem(key,value)方法
做用 - 設置數據(新增|修改數據)
新增數據 - key值是新的
修改數據 - key值是存在的
參數
key - 做爲存儲數據的標識(惟一,不可重複)
value - 存儲的數據內容(number|string)
getItem(key)方法
做用 - 獲取數據(讀取數據)
參數
key - 根據key獲取對應的數據內容
返回值 - key對應的value值
key(index)方法
做用 - 根據索引值返回對應key
參數
index - 索引值
返回值 - 返回key值
removeItem(key)方法
做用 - 刪除數據
參數
key - 根據key刪除指定數據內容
clear()方法
做用 - 將存儲系統的全部數據刪除(清空)
length屬性
做用 - 返回當前存儲系統的數據個數
localStorage
提供的屬性和方法與sessionStorage一致
storage事件
做用 - 實現多個窗口之間共享數據內容
問題
數據安全性低
目前除Safari瀏覽器支持該事件,其餘全部瀏覽器都不支持
對於數據的操做
新增 - setItem()
查詢 - getItem()
length屬性
key(index)
刪除 - removeItem()
clear()
修改
key(index) - key
getItem() - value
setItem(key,新value)
sessionStorage與localStorage
sessionStorage存儲系統存儲數據的特色
當瀏覽器窗口關閉時,數據所有丟失
當再次打開瀏覽器窗口時,數據不能使用
localStorage存儲系統存儲數據的特色
當瀏覽器窗口關閉時,數據依舊存儲
當再次打開瀏覽器窗口時,數據繼續使用
數據只能由用戶刪除
Web Socket(瞭解)
基本內容
socket - 是一種網絡協議
網絡協議 - SERVER&HTTP課程中的HTTP
WebSocket
表示在HTML5頁面中容許支持socket協議
瀏覽器-服務器
使用的網絡協議 - http協議
http協議的問題
短鏈接
無狀態
WebSocket提供的API
建立WebSocket對象
var socket = new WebSocket(URL);
URL - 是以"ws://"開始的
建立Socket對象,創建鏈接
WebSocket對象的方法
send() - 向服務器端發送數據內容
close() - 關閉socket連接
WebSocket對象的事件
onmessage事件 - 當服務器端向客戶端發送返回數據時被觸發
onopen事件 - 當客戶端與服務器端創建鏈接時被觸發
完成初始化功能
onclose事件 - 當客戶端與服務器端關閉連接時被觸發
完成資源釋放功能
WebSocket對象的屬性
readyState屬性 - 表示服務器端的通訊狀態
CONNECTING(數字值爲0),表示正在鏈接。
OPEN(數字值爲1),表示已創建鏈接。
CLOSING(數字值爲2),表示正在關閉鏈接。
CLOSED(數字值爲2),表示已關閉鏈接。javascript