在ES6中,String提供了一些新的方法和語法,便于將字符串轉換為JSON對象。
首先,我們可以使用JSON.parse方法將JSON字符串轉換為對象。
const jsonString = '{"name": "John", "age": 30, "city": "New York"}'; const obj = JSON.parse(jsonString); console.log(obj); // 輸出: {name: "John", age: 30, city: "New York"}
在ES6中,我們還可以使用模板字符串和解構賦值來創建一個JSON對象。
const name = "John"; const age = 30; const city = "New York"; const json = `{ "name": "${name}", "age": ${age}, "city": "${city}" }`; const obj = JSON.parse(json); console.log(obj); // 輸出: {name: "John", age: 30, city: "New York"}
使用對象解構語法也可以直接將JSON對象屬性轉換為變量。
const obj = {name: "John", age: 30, city: "New York"}; const {name, age, city} = obj; console.log(name); // 輸出: "John" console.log(age); // 輸出: 30 console.log(city); // 輸出: "New York"
如果JSON字符串中有一些不必要的屬性,我們可以使用對象解構語法的默認值來忽略這些屬性。
const jsonString = '{"name": "John", "age": 30, "city": "New York", "gender": "Male"}'; const {name, age, city} = JSON.parse(jsonString); console.log(name, age, city); // 輸出: "John", 30, "New York" const {gender = 'Unknown'} = JSON.parse(jsonString); console.log(gender); // 輸出: "Unknown"
總之,ES6提供了許多簡潔和靈活的語法,方便我們將字符串轉換為JSON對象。