1. 程式人生 > 其它 >JSON.parse()和JSON.stringify的區別,JSON.parse(JSON.stringify(obj))實現深拷貝

JSON.parse()和JSON.stringify的區別,JSON.parse(JSON.stringify(obj))實現深拷貝

技術標籤:jsvue

   //Json.parse是將字串轉換成物件
    var data = '{"name":"hahaha"}'
    console.log(JSON.parse(data))

結果:
在這裡插入圖片描述

//JSON.stringify將物件轉換成字串
var data2 = {name:"hahaha"}
console.log(JSON.stringify(data2))

結果:
在這裡插入圖片描述
JSON.parse(JSON.stringify(obj))可以實現簡單資料的深拷貝

就是利用JSON.stringify 將js物件序列化(JSON字串),再使用JSON.parse來反序列化(還原)js物件;

序列化的作用是儲存(物件本身儲存的只是一個地址對映,如果斷電,物件將不復存在,因此需將物件的內容轉換成字串的形式再儲存在磁碟上 )和傳輸(例如 如果請求的Content-Type是 application/x-www-form-urlencoded,則前端這邊需要使用qs.stringify(data)來序列化引數再傳給後端,否則後端接受不到;(Content-Type 為application/json;charset=UTF-或者 multipart/form-data 則可以不需要));