🙂
JavaScript - 程式設計
  • JavaScript - 程式設計
  • 1. 簡介
    • 1.1 講者簡介
    • 1.2 課程簡介
    • 1.3 開發工具簡介
    • 1.4 第一個 JavaScript
  • 2. 網站技術簡介
    • 2.1 網站前端技術
    • 2.2 網站後端技術
    • 2.3 JavaScript 簡介
  • 3. JavaScript程式語言
    • 3.1 套用 JavaScript
    • 3.2 註解(Comment)
    • 3.3 變數(Variable)
    • 3.4 資料型態(Data Types)
    • 3.5 Strict 模式
    • 3.6 運算子(Operator)
    • 3.7 字串(String)
    • 3.8 數值(Number)
    • 3.9 陣列(Array)
    • 3.10 物件(Object)
    • 3.11 條件式(Conditional)
    • 3.12 迴圈(Loop)
    • 3.13 函式(Function)
    • 3.14 類別(Class)
    • 3.15 傳值呼叫、傳址呼叫
    • 3.16 變數可視範圍(scope)
    • 3.17 錯誤補捉(Errors)
    • 3.18 資料格式
  • 4. JavaScript常用函式及主題
    • 4.1 JSON
    • 4.2 時間間隔執行
    • 4.3 數學(Math)
    • 4.4 日期時間(Date)
    • 4.5 陣列迭代(Iteration)
    • 4.6 陣列排序(Sort)
    • 4.7 正規表達式(Regular Expression)
    • 4.8 效能測試
    • 4.9 this 關鍵字
  • 5. 參考資料
Powered by GitBook
On this page
  • JSON.stringify()
  • JSON.parse()
  1. 4. JavaScript常用函式及主題

4.1 JSON

Previous4. JavaScript常用函式及主題Next4.2 時間間隔執行

Last updated 2 years ago

在 javascript/practice 資料夾下,建立 json.html 來練習。

JSON.stringify()

這裡舉一個本地端儲存(localStorage)的例子(以下寫法是錯的):

var my_obj = {
  test1: "文字一",
  test2: "文字二"
};
console.log(my_obj); // {test1: "文字一", test2: "文字二"}

localStorage.setItem("my_key", my_obj);

上述原始碼的第7行,執行完的結果,如下圖:

這樣結果是錯的,對 localStorage 來說,我們要存的是字串才行。

所以我們需要將 JSON 物件給字串化( JSON.stringify() ),如下(以下寫法才是正確的):

var my_obj = {
  test1: "文字一",
  test2: "文字二"
};
console.log(my_obj); // {test1: "文字一", test2: "文字二"}

localStorage.setItem("my_key", JSON.stringify(my_obj));

結果如下圖:

JSON.parse()

將物件字串,轉回成真實的物件:

var my_data_str = localStorage.getItem("my_key");
var my_data_obj = JSON.parse(my_data_str); // 轉回真實的物件

console.log(my_data_obj); // {test1: "文字一", test2: "文字二"}