在瀏覽器上儲存資料(轉)
在瀏覽器上儲存資料(轉)[@more@]
JavaScript 能做的事,並不侷限於訪問HTML 表單的資料;它還能讓你建立自己的物件――也就是讓你建立儲存於客戶端的資料。你甚至還能建立包含其它物件的物件。
為什麼需要這些功能?一個好的理由就是建立陣列(array)。簡單來說,陣列是一個含有幾組相關資訊的表格或資料庫。在下面的例子當中,我們定義了一個叫做taxTable的物件,該物件包含一個陣列,而該陣列由五個 name 物件例項所組成。這個陣列儲存五個州的州名,以及它們相關的稅率。然後,當使用者在訂購表單中輸入州名時,我們就在陣列中檢查它,並自動應用正確的稅率。建立一個5x2的陣列,與使用一個快速的 if-then 序列來測試州名相比,使用陣列似乎還要做額外的工作。不過,隨著條目個數的增加,陣列的功能也就變得愈來愈強大。不妨想象有一個擁有五十個州、或五百個銷售區、亦或是五千個城市的表格。有了一個陣列,你就能夠一次建立條目列表,然後每當使用者輸入新資料時,就可迅速加以引用這個條目列表。下面這個特殊的JavaScript 程式碼,開始就像我們的計算(calculation)示例一樣。不過這一次,我們並不止於簡單的數學計算:function state(stateName, stateTax){ //fill the instance with the values passed in this.name=stateName; this.tax=stateTax; //then return the instance of state return this;}上面定義的state() 函式建立了包括州名與稅率的一個州(state)的例項。然而,我們的州此時似乎什麼值都沒有。下面我們給它們一些值吧。
function taxTable(){
//the instance of taxTable is filled with //an array of state objects this[0]=new state("AZ", 0.04); this[1]=new state("HI", 0.10); this[2]=new state("TX", 0.06); this[3]=new state("NJ", 0.08); this[4]=new state("", 0.00); //return the newly created taxTable to //the calling function return this;}現在,無論taxTable函式何時被呼叫,我們都建立了五個不同的州例項,分別編號為0到4。這樣一來,我們就建立了一個陣列,來儲存我們所有的稅率資訊。現在我們需要加以處理一番:
functioncalculateTax(stateValue){ var index=0; var result=0; var temp=0; 首先,我們定義一個稱為calculateTax的函式。calculateTax會以初始化一些變數開始。然後,它需要從使用者那裡取得一個值: //while there"s an instance of state //in the taxGuide array while (taxGuide[index]) { //if the state passed in is in the //taxGuide array if (stateValue.toUpperCase() == taxGuide[index].name) { // put the correct tax rate in "result" result = taxGuide[index].tax; } index++; }while 迴圈會持續將使用者的輸入,與稅率表中的所有可能的條目進行比較,直到比完完全部資料。一旦它發現一個匹配(或是沒有匹配),它就將適當的稅率寫入 result 變數中。然後我們可以使用該稅率來計算總量,然後將其加至我們的總額之中。
{ calcTotal(); var temp1 = document.orderForm.totalPrice.value; // calculate total with tax var temp2 = (parseFloat(temp1) * (1 + parseFloat(result))); // chop off extra decimal places vartotalWithTax = (Math.round(temp2 * 100)) / 100; // change value in form document.orderForm.totalPrice.value = totalWithTax; } 上面的程式碼計算包括稅金在內的全部費用。首先,我們設定變數temp1 的值等於totalPrice表單元素的值。然後,我們再計算稅後總額,並將其值賦給“temp2”。下一行程式碼則使用Math.round方法捨去額外的小數位,然後將新的總額賦值給totalWithTax變數。接下來,我們將此總額送回到訂購表單之中。來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-957454/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 瀏覽器儲存資料的幾種方法瀏覽器
- 常見的瀏覽器端資料儲存方案瀏覽器
- 瀏覽器端儲存資料的終極指南瀏覽器
- 瀏覽器儲存的方法瀏覽器
- 谷歌瀏覽器檢視本地儲存資訊谷歌瀏覽器
- sessionStorage:提供瀏覽會話資料的儲存Session會話
- 聊一聊常見的瀏覽器端資料儲存方案瀏覽器
- win10瀏覽器如何儲存網頁_win10瀏覽器怎麼儲存網頁Win10瀏覽器網頁
- chrome 瀏覽器如何設定不儲存表單資訊Chrome瀏覽器
- HTTP快取和瀏覽器的本地儲存HTTP快取瀏覽器
- 瀏覽器儲存密碼獲取與解密瀏覽器密碼解密
- win10瀏覽器如何儲存網頁 win10如何把網址儲存在瀏覽器Win10瀏覽器網頁
- 新型BI解決方案:SaaS BI,在瀏覽器上分析資料瀏覽器
- Rtsp轉Flv在瀏覽器中播放瀏覽器
- 記錄:舊版谷歌瀏覽器不提示儲存密碼,修改瀏覽器設定裡的儲存密碼無效谷歌瀏覽器密碼
- cookie已涼,瀏覽器儲存該怎麼做Cookie瀏覽器
- 2020前端面試-瀏覽器儲存機制篇前端面試瀏覽器
- win10電腦禁止Edge瀏覽器儲存信用卡資料的方法Win10瀏覽器
- win10瀏覽器密碼無法儲存怎麼解決_win10瀏覽器密碼儲存不了修復方法Win10瀏覽器密碼
- 還在讓瀏覽器儲存密碼?小心遭惡意軟體竊取瀏覽器密碼
- 如何延長儲存伺服器上資料的儲存時間?伺服器
- 前端基於瀏覽器儲存的AJAX效能優化前端瀏覽器優化
- python本地儲存瀏覽器收藏夾網站mhtml格式Python瀏覽器網站HTML
- 修改內容未儲存瀏覽器關閉確認瀏覽器
- 在瀏覽器上安裝 Vue Devtools工具瀏覽器Vuedev
- 資料儲存(1):從資料儲存看人類文明-資料儲存器發展歷程
- 深入瞭解瀏覽器儲存:對比Cookie、LocalStorage、sessionStorage與IndexedDB瀏覽器CookieSessionIndex
- 一文讀懂瀏覽器儲存與快取機制瀏覽器快取
- 瀏覽器有幾種儲存機制?講一講:Storage for the Web瀏覽器Web
- 一個伺服器輕鬆儲存上億資料,TDengine 在北京智慧建築邊緣儲存的應用伺服器
- win10系統中360瀏覽器如何快捷儲存圖片Win10瀏覽器
- macOS中Safari瀏覽器網頁如何儲存至備忘錄Notes?Mac瀏覽器網頁
- 瀏覽器資料庫 IndexedDB(一) 概述瀏覽器資料庫Index
- 在瀏覽器裡使用SAPGUI瀏覽器GUI
- 伺服器資料的儲存伺服器
- 使用Skypack在瀏覽器上直接匯入ES模組瀏覽器
- 在雲伺服器儲存資料的10個好處伺服器
- 在 SAP BTP Kyma Runtime 上使用 Redis 讀取和儲存資料Redis
- wordpress外掛在伺服器上的儲存位置伺服器