如何在 JavaScript 中修改 JSON 物件的陣列值?
在本文中,我們將討論如何在 JavaScript 中修改 JSON 物件的陣列值。我們嘗試更新新值或修改陣列中的現有值。
修改陣列就像修改物件一樣,當該陣列在物件內部時。這裡將適用修改的正常通用原則。
語法
以下是 for…in 語句的語法。
for (var in obj) { //code }
示例 1
在這個例子中,我們嘗試使用 for…in 語句遍歷陣列。此語句幫助我們迴圈遍歷物件的屬性。我們可以為每個屬性執行一次程式碼。在這裡,我們嘗試修改現有值並返回陣列。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title> Modify an array value of a JSON Object </title> </head> <body> <script type="text/javascript"> let res1 = ""; let res2 = ""; let obj = { firstName: "Alice", lastName: "Cullen", companies: ["Tesla", "Spacex", "Neuralink"], }; for (let i in obj.companies) { res1 += obj.companies[i] + "</br>"; } document.write("Before change: " + " " + res1); obj.companies[0] = "SolarCity"; for (let i in obj.companies) { res2 += obj.companies[i] + "</br>"; } document.write("After change:" + " " + res2); </script> </body> </html>
示例 2
在這個例子中,我們嘗試使用 for…in 語句遍歷陣列。此語句幫助我們迴圈遍歷物件的屬性。我們可以為每個屬性執行一次程式碼。在這裡,我們嘗試修改現有值並返回陣列。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Modify an array value of a JSON Object</title> <div id="display"></div> </head> <body> <script type="text/javascript"> let arr = new Array("Alice", 00, "Edward", 80); let res = ""; arr[1] = 40; for (let i in arr) { res += arr[i] + "<br>"; } document.getElementById("display").innerHTML = res; </script> </body> </html>
示例 3
在下面的示例中,最初在“companies”陣列中,第一個元素是“Tesla”。但在修改後,第一個元素更改為“SolarCity”,結果顯示在輸出中。
<html> <body> <script> var res1 = ""; var res2 = ""; var obj = { "name":"Elon musk", "age":48, "companies": [ "Tesla", "Spacex", "Neuralink" ] } for (var i in obj.companies) { res1 += obj.companies[i] + "</br>" } document.write("Before change: " +" "+res1); obj.companies[0] = "SolarCity"; for (var i in obj.companies) { res2 += obj.companies[i] + "</br>" } document.write("After change:" +" "+res2); </script> </body> </html>
廣告