一、js合併json
在開發中,經常需要對json數據進行合併操作,以達到整合數據的目的。在JavaScript中,可以通過以下兩種方法對json數據進行合併操作。
1.使用Object.assign方法
let obj1 = {"name": "張三", "age": 20}; let obj2 = {"sex": "男", "address": "北京"}; let obj3 = Object.assign({}, obj1, obj2); console.log(obj3); //輸出結果為:{"name": "張三", "age": 20, "sex": "男", "address": "北京"}
在上述代碼中,首先定義了兩個json數據obj1和obj2,然後使用Object.assign方法,將兩個json數據合併到一個新的json數據obj3中。Object.assign方法中第一個參數為目標對象,後面的參數為源對象,即將後面的對象合併到第一個對象後。如果目標對象與源對象有重複的屬性,後面的屬性將覆蓋前面的屬性。
2.使用ES6的展開運算符
let obj1 = {"name": "張三", "age": 20}; let obj2 = {"sex": "男", "address": "北京"}; let obj3 = {...obj1, ...obj2}; console.log(obj3); //輸出結果為:{"name": "張三", "age": 20, "sex": "男", "address": "北京"}
在上述代碼中,也是定義了兩個json數據obj1和obj2,然後使用ES6的展開運算符,將兩個json數據合併到一個新的json數據obj3中。展開運算符也是將多個對象合併到一個新的對象中。
二、jsjson轉數組
在JavaScript中,Json數據可以通過Json.parse方法轉換為數組。Json.parse方法將Json數據轉換為JavaScript對象,通過對象的屬性和方法進一步處理數據。而JavaScript對象可以通過Object.keys方法獲取屬性名,通過Object.values方法獲取屬性值。
let jsonStr = '[{"name": "張三", "age": 20}, {"name": "李四", "age": 22}]'; let jsonArray = JSON.parse(jsonStr); console.log(jsonArray); //輸出結果為:[{"name": "張三", "age": 20}, {"name": "李四", "age": 22}] console.log(Object.keys(jsonArray[0])); //輸出結果為:["name", "age"] console.log(Object.values(jsonArray[0])); //輸出結果為:["張三", 20]
三、js合併數組api
在JavaScript中,可以使用concat方法和Spread語法對數組進行合併操作。下面依次介紹這兩種方法。
1.使用concat方法
let arr1 = [1, 2, 3]; let arr2 = ['a', 'b', 'c']; let arr3 = arr1.concat(arr2); console.log(arr3); //輸出結果為:[1, 2, 3, 'a', 'b', 'c']
在上述代碼中,首先定義了兩個數組arr1和arr2,然後使用concat方法,將兩個數組合併到一個新的數組arr3中。
2.使用Spread語法
let arr1 = [1, 2, 3]; let arr2 = ['a', 'b', 'c']; let arr3 = [...arr1, ...arr2]; console.log(arr3); //輸出結果為:[1, 2, 3, 'a', 'b', 'c']
在上述代碼中,也是定義了兩個數組arr1和arr2,然後使用Spread語法,將兩個數組合併到一個新的數組arr3中。Spread語法也是將多個數組或對象合併到一個新的數組或對象中。
四、jsjson轉對象
在JavaScript中,Json數據可以通過Json.parse方法轉換為JavaScript對象。但Json數據的格式與JavaScript對象的格式不同,需要進行相應的轉換,方法如下。
let jsonStr = '{"name": "張三", "age": 20}'; let jsonObj = JSON.parse(jsonStr); console.log(jsonObj); //輸出結果為:{"name": "張三", "age": 20}
五、jsjson添加元素的方法
在JavaScript中,可以使用以下方法向Json數據中添加元素。
1.直接添加元素
let obj = {"name": "張三", "age": 20}; obj.sex = "男"; console.log(obj); //輸出結果為:{"name": "張三", "age": 20, "sex": "男"}
在上述代碼中,直接在Json數據中添加新的屬性。注意,在Json數據中添加屬性時,需要使用”.”或”[]”操作符。
2.使用Object.defineProperty方法
let obj = {"name": "張三", "age": 20}; Object.defineProperty(obj, "sex", { value: "男", enumerable: true, writable: false, configurable: true }); console.log(obj); //輸出結果為:{"name": "張三", "age": 20, "sex": "男"}
在上述代碼中,使用Object.defineProperty方法向Json數據中添加新的屬性。該方法可以設置新屬性的特性。
3.使用Object.defineProperties方法
let obj = {"name": "張三", "age": 20}; Object.defineProperties(obj, { sex: { value: "男", enumerable: true, writable: false, configurable: true }, address: { value: "北京", enumerable: true, writable: false, configurable: true } }); console.log(obj); //輸出結果為:{"name": "張三", "age": 20, "sex": "男", "address": "北京"}
在上述代碼中,使用Object.defineProperties方法可以向Json數據中添加多個新的屬性。
原創文章,作者:LYXK,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/133966.html