首頁  >  文章  >  web前端  >  jquery中序列化是什麼意思

jquery中序列化是什麼意思

青灯夜游
青灯夜游原創
2023-03-20 11:01:421853瀏覽

在jquery中,序列化是指把物件轉換為可傳輸的位元組序列的過程。序列化是為了解決在物件流進行讀寫操作時所引發的問題;序列化就是一種用來處理物件流的機制,所謂物件流也就是將物件的內容進行流化。

jquery中序列化是什麼意思

本教學操作環境:windows7系統、jquery3.6版本、Dell G3電腦。

序列化是什麼意思

就是用來處理物件流的機制,所謂物件流也就是將物件的內容進行流化。可以對流化後的物件進行讀寫操作,也可將流化後的物件傳輸於網路之間。序列化是為了解決在物件流進行讀寫操作時所引發的問題。

  • 序列化:把物件轉換為可傳輸的位元組序列過程稱為序列化。 

  • 反序列化:把位元組序列還原為物件的過程稱為反序列化。

為什麼要序列化?

如果光看定義我想你很難一下子理解序列化的意義,那麼我們可以從另一個角度來推導出什麼是序列化, 那麼究竟序列化的目的是什麼?

其實序列化最終的目的是為了物件可以跨平台存儲,和進行網路傳輸。而我們進行跨平台儲存和網路傳輸的方式就是IO,而我們的IO支援的資料格式就是位元組數組。

因為我們單方面的只把物件轉成位元組數組還不行,因為沒有規則的位元組數組我們是沒辦法把物件的本來面目還原回來的,所以我們必須在把物件轉成位元組數組的時候就制定一種規則(序列化),那麼我們從IO流裡面讀出資料的時候再以這種規則把物件還原回來(反序列化)。

如果我們要把一棟房子從一個地方運到另一個地方去,序列化就是我把房子拆成一個個的磚塊放到車子裡,然後留下一張房子原來結構的圖紙,反序列化就是我們把房子運送到了目的地以後,根據圖紙把一塊塊磚頭還原成房子原來面目的過程

jQuery序列化方法

 jQuery中的序列化有兩種:serialize() 方法和serializeArray() 方法。

1、serialize() 方法:

serialize() 方法透過序列化表單值,建立 URL 編碼文字字串。

您可以選擇一個或多個表單元素(例如 input 和/或 文字方塊),或 form 元素本身。

序列化的值可在產生AJAX 請求時用於URL 查詢字串中,這樣在ajax提交表單資料時,就不用一一列舉每一個參數,只需將data參數設為:$ (“form”).serialize()即可。

jquery中序列化是什麼意思

輸出標準的查詢字串:a=1&b=2&c=3&d=4&e=5

註解:只會將「成功的控制項」序列化為字串。 (即指沒被禁用的元素)如果不使用按鈕來提交表單,則不對提交按鈕的值序列化。如果要表單元素的值包含到序列字串中,元素必須使用 name 屬性。

2、serializeArray() 方法:

serializeArray() 方法透過序列化表單值來建立物件陣列(名稱和值)。

您可以選擇一個或多個表單元素(例如 input 和/或 textarea),或 form 元素本身。

jquery中序列化是什麼意思

此方法傳回的是 JSON 物件而非 JSON 字串。

傳回的 JSON 物件是由一個物件陣列組成的,其中每個物件包含一個或兩個名稱值對 —— name 參數和 value 參數(如果 value 不為空的話)。

元素不能被停用(已停用的元素不會被包含在內),且元素應該有含有 name 屬性。提交按鈕的值也不會被序列化。文件選擇元素的資料也不會被序列化。

注意:1、不被停用;2、包含name屬性

【推薦學習:jQuery影片教學web前端影片

以上是jquery中序列化是什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn