[英]Converting JSON value into JavaScript array
我想將一個 JSON 字符串轉換為一組包含來自 JSON 的值的數組。 在json.stringify(jsonmybe)
並提醒它顯示[{"role":"noi_user"},{"role":"bert_user"}]
(我將其視為 JSON)。 我想獲取noi_user
和bert_user
並將它們設置為一個 javascript 數組。 像['noi_user','bert_user']
類的東西,每個值都有引號。
我做了var stringy = json.parse()
和顯示[object Object]
的警報。 並進一步添加這一行
for (var i = 0; i < stringy.length; i++) {
arr.push(stringy[i]['role']);}
我得到的arr
是一個帶逗號的值,當我在警報中時,但是當我在文本字段中顯示它們時缺少逗號,它變成了一個長字符串,如noi_userbert_user
我真正想要的是從[{"role":"noi_user"},{"role":"bert_user"}]
到['noi_user','bert_user']
使用 JSON.parse 然后減少得到你想要的,
var s = `[{"role":"noi_user"},{"role":"bert_user"}]` var arr = [] try { arr = JSON.parse(s).reduce((acc, val)=>[...acc, val.role], []) } catch (e){ console.log("Invalid json") } console.log(arr)
這是你要找的嗎? 您可以映射到您的數組並提取每個數據的role
屬性。
const jsonString = ...
const data = JSON.parse(jsonString).map(data => data.role);
console.log(JSON.stringify(data, null, 2));
JSON 使用雙引號來分隔字符串和字段名稱。
所以你有一個像這樣的 JSON 字符串
'[{"role":"noi_user"},{"role":"bert_user"}]'
您想將其轉換為對象,然后提取每個元素的“角色”字段的值,將它們全部放入一個數組中。
您的示例 json 字符串在“角色”字段中包含一組用戶對象。 以下代碼獲取此列表,循環遍歷每個用戶對象並將每個對象的角色放入單獨的數組 roleList 中。
var jsonStr = '[{"role":"noi_user"},{"role":"bert_user"}]'; var userObjList = JSON.parse(jsonStr); var roleList = []; userObjList.forEach(userObj => { roleList.push(userObj.role); }); console.log(roleList);
您可以創建一個自定義函數來在 PHP 中生成某種 array_values,但具有如下所示的縮進和 2D 級別:
function array_values_indented (input) { var tmpArr = [] for (key in input) { tmpArr.push(input[key]['role']); } return tmpArr } var object = JSON.parse('[{"role":"noi_user"},{"role":"bert_user"}]'); var result = array_values_indented(object); console.log(result);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.