




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第7章HTML5Web存儲(chǔ)目錄Web存儲(chǔ)WebSQLDatabase索引數(shù)據(jù)庫認(rèn)識(shí)Web存儲(chǔ)兩種Web存儲(chǔ)方式會(huì)話存儲(chǔ)(SessionStorage):它的訪問性上只限于當(dāng)前頁面,并且頁面關(guān)閉后會(huì)消失,通過sessionStorage進(jìn)行訪問。本地存儲(chǔ)(LocalStorage):沒有時(shí)間限制的數(shù)據(jù)存儲(chǔ),通過localStorage進(jìn)行訪問。WebStorage和Cookie的異同網(wǎng)絡(luò)傳輸:Cookie會(huì)隨著請(qǐng)求發(fā)送到服務(wù)器端,而WebStorage數(shù)據(jù)存在客戶端,不會(huì)與服務(wù)器發(fā)交互。存儲(chǔ)限制:Cookie存儲(chǔ)的數(shù)據(jù)大小限制為4KB,而WebStorage能夠提供更大容量的存儲(chǔ)設(shè)計(jì),根據(jù)瀏覽器不同,可以存儲(chǔ)5MB左右的數(shù)據(jù)。數(shù)據(jù)接口:WebStorage提供豐富的數(shù)據(jù)接口,開發(fā)人員可以方便的訪問數(shù)據(jù),而Cookie則需要開發(fā)人員自行開發(fā)接口。存儲(chǔ)空間:WebStorage每個(gè)域(包括子域)有獨(dú)立的存儲(chǔ)空間,各個(gè)存儲(chǔ)空間是完全獨(dú)立的,因此不會(huì)造成數(shù)據(jù)混亂。Web存儲(chǔ)API函數(shù)名功能length存儲(chǔ)的鍵/值對(duì)的數(shù)量key(n)返回存儲(chǔ)的第N個(gè)鍵。getItem(key)返回鍵key對(duì)應(yīng)的值。如果值不存在,則返回空null。注意,返回的值是一個(gè)字符串。如果你存儲(chǔ)的值是整數(shù)或布爾型,你需要類型轉(zhuǎn)換。setItem(key,value)把值插入到key鍵中removeItem(key)移除某個(gè)鍵對(duì)應(yīng)的值(包含鍵本身)。如果鍵不存在,此方法什么也不做。clear清空存儲(chǔ)的鍵/值數(shù)據(jù)WebSQLDatabaseWebSQLDatabase允許應(yīng)用程序通過一個(gè)異步JavaScript接口訪問SQLLite數(shù)據(jù)庫,HTML5的WebSQLDatabaseAPI有三個(gè)核心的方法
函數(shù)功能openDatabase()打開數(shù)據(jù)庫或者創(chuàng)建新的數(shù)據(jù)庫transaction()控制事務(wù)的提交和回滾executeSql()執(zhí)行SQL語句WebSQLDatabase打開數(shù)據(jù)庫:使用openDatabase()方法打開數(shù)據(jù)庫,如果該數(shù)據(jù)庫不存在,則創(chuàng)建新的數(shù)據(jù)庫。該方法包含五個(gè)參數(shù):數(shù)據(jù)庫名、版本號(hào)、描述、數(shù)據(jù)庫大小、回調(diào)函數(shù),其中回調(diào)函數(shù)可以省略。通過事務(wù)執(zhí)行SQL:transaction()方法接收一個(gè)方法作為參數(shù),在該方法中執(zhí)行SQL腳本vardb=openDatabase('student','1.0',’StudentInfo',5*1024);vardb=openDatabase('student','1.0','StudentInfo',5*1024);db.transaction(function(tx){ tx.executeSql('CREATETABLEstudentinfo(idINTEGER,nameTEXT)'); tx.executeSql('INSERTINTOstudentinfo(id,name)Values(1,"zhangsan")');});索引數(shù)據(jù)庫WebSQLDatabase已被較新的規(guī)范——索引數(shù)據(jù)庫所取代,目前瀏覽器正在逐步實(shí)現(xiàn)對(duì)索引數(shù)據(jù)庫的支持。索引數(shù)據(jù)庫以window.indexDB作為入口,但各個(gè)瀏覽器增加了前綴,獲取方式一般采用。采用command->request->result的調(diào)用方式,比如打開數(shù)據(jù)庫,返回一個(gè)request,在request的result中得到返回的數(shù)據(jù)庫引用。varindexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.msIndexedDB;索引數(shù)據(jù)庫打開數(shù)據(jù)庫onupgradeneeded這個(gè)回調(diào)函數(shù):當(dāng)數(shù)據(jù)庫發(fā)生改變時(shí)調(diào)用。比如,當(dāng)某個(gè)數(shù)據(jù)庫不存在需要?jiǎng)?chuàng)建,或者數(shù)據(jù)庫更改時(shí)。一般在該回調(diào)函數(shù)內(nèi)創(chuàng)建objectStore,相當(dāng)于數(shù)據(jù)庫中的一張表。varpeopleData=[{name:"JohnDow",email:"john@"},{name:"DonDow",email:"don@"}];vardb;varrequest=indexedDB.open("PeopleDB",1);request.onsuccess=function(evt){db=request.result;};request.onerror=function(evt){console.log("IndexedDBerror:"+evt.target.errorCode);};request.onupgradeneeded=function(evt){varobjectStore=evt.currentTarget.result.createObjectStore("people",{keyPath:"id",autoIncrement:true});objectStore.createIndex("name","name",{unique:false});objectStore.createIndex("email","email",{unique:true});for(iinpeopleData){objectStore.add(peopleData[i]);}};索引數(shù)據(jù)庫插入數(shù)據(jù)//界面控件數(shù)據(jù)獲取varname=document.getElementById('txtName').valuevaremail=document.getElementById('txtEmail').value;//事務(wù)vartransaction=db.transaction("people","readwrite");//對(duì)象庫varobjectStore=transaction.objectStore("people");//添加對(duì)象
varrequest=objectStore.add({name:name,email:email});request.onsuccess=function(event){
};索引數(shù)據(jù)庫瀏覽數(shù)據(jù)//輸出區(qū)域varoutput=document.getElementById('printOutput');output.textContent="";//事務(wù)vartransaction=db.transaction("people","readwrite");varobjectStore=transaction.objectStore("people");//打開數(shù)據(jù)表varrequest=objectStore.openCursor();request.onsuccess=function(event){varcursor=event.target.result;if(cursor){output.textContent+="id:"+cursor.key+"is"+
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 行政管理的研究方法試題及答案
- 2023三年級(jí)英語下冊(cè) Module 3 My colourful life Unit 9 A day on the farm第1課時(shí)教學(xué)設(shè)計(jì) 牛津滬教版(三起)
- 節(jié)能監(jiān)測員面試題及答案
- 2024-2025學(xué)年高中生物上學(xué)期第10周 遺傳和染色體教學(xué)設(shè)計(jì)
- 第十一單元 實(shí)驗(yàn)活動(dòng)8粗鹽中可溶性雜質(zhì)的去除教學(xué)設(shè)計(jì)-2023-2024學(xué)年九年級(jí)化學(xué)人教版下冊(cè)
- 村行政能力測試題及答案
- 實(shí)戰(zhàn)模擬:咖啡師試題及答案
- 咖啡師的職業(yè)生涯規(guī)劃試題及答案
- 公共事業(yè)管理重要考試技巧試題及答案
- 2025至2030年中國保齡球補(bǔ)球膠市場分析及競爭策略研究報(bào)告
- 零星材料明細(xì)單
- 施工現(xiàn)場安全檢查記錄表(周)以及詳細(xì)記錄
- 2022專升本無機(jī)化學(xué)試卷答案
- 電子課件《英語(第一冊(cè))(第三版)》A013820英語第一冊(cè)第三版Unit6
- (完整版)湘教版地理必修一知識(shí)點(diǎn)總結(jié)
- JGJ T53-2011房屋滲漏修繕技術(shù)規(guī)程
- 論文題目修改說明【模板】
- 江西師范大學(xué)物理與通信電子學(xué)院實(shí)驗(yàn)報(bào)告樣表
- 工廠供電——電力負(fù)荷及其計(jì)算1
- 超星爾雅學(xué)習(xí)通《歐洲文明概論》章節(jié)測試含答案
- (完整版)叉車孔設(shè)計(jì)標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論