JSON字串與物件之間的轉換詳解_json
JSON(JavaScript Object Notation) 是JavaScript程式語言的子集。正因JSON是JavaScript的子集,所以它可清晰的運用在此語言中。
eval函數 JSON文字轉換為物件
為了將JSON文字轉換為對象,可以使用eval函數。 eval函數呼叫JavaScript編輯器。由於JSON是JavaScript的子集,因此編譯器將正確的解析文字並產生物件結構。文字必須括在括號中避免產生JavaScript的語法歧義。
var obj = eval('(' JSONTest ')');eval函數非常快速。它可以編譯執行任何JavaScript程序,因此產生了安全性問題。當使用可信任與完善的原始程式碼時才可以使用eval函數。這樣可以更安全的解析JSON文字。使用XmlHttp的web應用,頁面之間的通訊只允許同源,因此是可以信任的。但這卻不是完善的。如果伺服器沒有嚴謹的JSON編碼,或沒有嚴格的輸入驗證,那麼可能傳送包含危險腳本的無效JSON文字。 eval函數將執行惡意的腳本。
JSON解釋器 JSON.parse、JSON.stringify
使用JSON解析器可以防止像eval函數轉換JSON文字為物件那樣的安全隱患。 JSON解析器只能辨識JSON文本,拒絕所有腳本。提供了本地JSON支援的瀏覽器的JSON解析器將遠快於eval函數。
目前,Firefox、Opera、IE8以上版本也提供了本地JSON支援。其中,JSON解釋器提供的函數有:JSON.parse、JSON.stringify。
對於那些不提供本地JSON支援的瀏覽器可以引入腳本json2.js,來實作JSON轉換功能。 json2.js腳本可到https://github.com/douglascrockford/JSON-js/blob/master/json2.js頁面下載。
JSON.parse 函數
將JSON文字轉換為物件。
JSON.parse(text[, reviver])
參數
text
必選項。要轉換為物件的JSON文字。
reviver
可選項。此參數是個替換函數。在轉換中,遍歷的每個節點,都將執行該函數,該函數的返回值將替代轉換結果的相應節點值。
JSON.stringify 函數
將物件轉換為JSON文字。
JSON.stringify(value[, replacer[, space]])
參數
text
必選項。要轉換為JSON文字的物件。
reviver
可選項。此參數是個替換函數。在轉換中,遍歷的每個節點,都將執行該函數,該函數的返回值將替代轉換結果的相應節點值。
space
可選項。格式化輸出JSON文字縮排的空格數量。如果不提供該參數將不會格式化輸出。
參數reviver的委託類型
reviver(key, value)
reviver函數的中的this是目前所遍歷到的節點的父節點。當遍歷的是根節點的時候,父節點是個Object對象,根節點是該物件的屬性,屬性名稱是空字串。
參數
key
當父節點是數組Object,key為數組索引,否則key為Object屬性名。
value
節點值。
註:JSON不支援循環資料結構。
jQuery.parseJSON( jsonTex )
jQuery中也有將字串轉為JSON格式的方法jQuery.parseJSON( json ),接受一個標準格式的 JSON 字串,並傳回解析後的 JavaScript (JSON)物件。當然如果有興趣可以自己封裝一個jQuery擴展,jQuery.stringifyJSON(obj)將JSON轉為字串。
以上所述就是本文的全部內容了希望大家能夠喜歡。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP數組轉JSON的效能最佳化方法包括:使用JSON擴充和json_encode()函數;新增JSON_UNESCAPED_UNICODE選項以避免字元轉義;使用緩衝區提高循環編碼效能;快取JSON編碼結果;考慮使用第三方JSON編碼庫。

PHP中int型別轉字串的方法詳解在PHP開發中,常會遇到將int型別轉換為字串型別的需求。這種轉換可以透過多種方式實現,本文將詳細介紹幾種常用的方法,並附帶具體的程式碼範例來幫助讀者更好地理解。一、使用PHP內建函數strval()PHP提供了一個內建函數strval(),可以將不同類型的變數轉換為字串類型。當我們需要將int型別轉換為字串型別時,

1.先開啟pycharm,進入到pycharm首頁。 2.然後新建python腳本,右鍵--點選new--點選pythonfile。 3.輸入一段字串,代碼:s="-"。 4.接著需要把字串裡面的符號重複20次,代碼:s1=s*20。5、輸入列印輸出代碼,代碼:print(s1)。 6.最後運行腳本,在最底部會看到我們的回傳值:-就重複了20次。

Jackson庫中的註解可控制JSON序列化和反序列化:序列化:@JsonIgnore:忽略屬性@JsonProperty:指定名稱@JsonGetter:使用獲取方法@JsonSetter:使用設定方法反序列化:@JsonIgnoreProperties:忽略屬性@ JsonProperty:指定名稱@JsonCreator:使用建構子@JsonDeserialize:自訂邏輯

將MySQL查詢結果陣列轉換為物件的方法如下:建立一個空物件陣列。循環結果數組並為每一行建立一個新的物件。使用foreach迴圈將每一行的鍵值對賦給新物件的對應屬性。將新物件加入到物件數組中。關閉資料庫連線。

PHP函數可以透過使用return語句後接物件實例來傳回對象,從而將資料封裝到自訂結構中。語法:functionget_object():object{}。這允許創建具有自訂屬性和方法的對象,並以對象的形式處理資料。

GoLang中的字串雖然不可變,但可透過以下技術動態修改:使用字串連接符號連接字串。使用字串格式化建立新字串。修改字串底層位元組切片。使用第三方庫提供的可變字串類型。

PHP字串操作:去除多餘逗號,保留唯一逗號實作技巧在PHP開發中,字串處理是一個非常常見的需求。有時候我們需要對字串進行處理,去除多餘的逗號,保留唯一的逗號。在這篇文章中,我將介紹一種實作技巧,並提供具體的程式碼範例。首先,我們來看一個常見的需求:假設我們有一個包含多個逗號的字串,我們需要去除多餘的逗號,只保留唯一的逗號。例如,將"apple,ba
