在js中将JSON对象字符串转换为数组
给定一个JSON字符串,任务是将JSON字符串转换为JSON对象数组。
该数组包含借助 JavaScript 从 JSON 字符串获取的 JavaScript 对象的值。有两种方法可以解决这个问题:
方法1
首先,使用 JSON.parse() 方法将 JSON 字符串转换为 JavaScript 对象,然后使用 push() 方法从对象中提取值并将其推送到数组中。
<!DOCTYPE HTML>
<html>
<head>
<title>
How to convert JSON string to array
of JSON objects using JavaScript?
</title>
</head>
<body style = "text-align:center;">
<h1 style = "color:green;" >
GeeksForGeeks
</h1>
<p id = "GFG_UP"></p>
<button onclick = "myGFG()">
Click Here
</button>
<p id = "GFG_DOWN"></p>
<script>
var up = document.getElementById("GFG_UP");
var JS_Obj =
'{"prop_1":"val_1", "prop_2":"val_2", "prop_3" : "val_3"}';
up.innerHTML = "JSON string - '" + JS_Obj + "'";
var down = document.getElementById("GFG_DOWN");
function myGFG() {
var obj = JSON.parse(JS_Obj);
var res = [];
for(var i in obj)
res.push(obj[i]);
down.innerHTML = "Array of values - ["
+ res + "]";
}
</script>
</body>
</html>
方法2
这个方法也类似,只是方法不同而已。使用 eval() 方法将 JSON 字符串转换为 JavaScript 对象,然后使用 push() 方法获取对象的值并将它们推送到数组中。
<!DOCTYPE HTML>
<html>
<head>
<title>
How to convert JSON string to array
of JSON objects using JavaScript?
</title>
</head>
<body style = "text-align:center;">
<h1 style = "color:green;" >
GeeksForGeeks
</h1>
<p id = "GFG_UP"></p>
<button onclick = "myGFG()">
Click Here
</button>
<p id = "GFG_DOWN"></p>
<script>
var up = document.getElementById("GFG_UP");
var JS_Obj =
'{"prop_1":"val_1", "prop_2":"val_2", "prop_3" : "val_3"}';
up.innerHTML = "JSON string - '" + JS_Obj + "'";
var down = document.getElementById("GFG_DOWN");
function myGFG() {
var obj = eval('(' + JS_Obj + ')');
var res = [];
for(var i in obj)
res.push(obj[i]);
down.innerHTML = "Array of values - ["
+ res + "]";
}
</script>
</body>
</html>
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。