台灣最大程式設計社群網站
線上人數
1311
 
會員總數:245003
討論主題:188957
歡迎您免費加入會員
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
讀取json
價值 : 30 QP  點閱數:404 回應數:7

樓主

Henry
門外漢
0 10
235 13
發送站內信

假設傳入的json為
rt_data = [{ 姓名: "Wing", 年齡: "20", 身高: "182" },
{ 姓名: "Wind", 年齡: "18", 身高: "165" },
{ 姓名: "Edge", 年齡: "25", 身高: "171" }]
目前是這樣讀取
var str= "";
for (var i = 0; i < rt_data.length ; i++) {
str += "第"+i+"筆:"+"姓名 = " + rt_data[i]["姓名"] + ";年齡 = " + rt_data[i]["年齡"] + ";身高 = " + rt_data[i]["身高"] + "</br>";

}
console.log(str);


如果未來 json 變成
rt_data = [{ 大名: "Wing", 年紀: "20", 身高: "182" },
{ 大名: "Wind", 年紀: "18", 身高: "165" },
{ 大名: "Edge", 年紀: "25", 身高: "171" }]

如果想要改寫讀取方式來達到json 怎麼變(名稱變但順序不會變) 都會是一樣的結果(原格式列出資料) 要如何改呢 感激不盡


搜尋相關Tags的文章: [ /json 讀取json ] ,
本篇文章發表於2018-10-22 15:10
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

彩虹
檢舉此回應
我只有一個問題想問
為何會有「如果未來 json 變成...」?

回傳的Json格式, 一開始就應該要定義好的,不能隨便更換(尤其網站已經處於上線階段)

如果格式或參數有變,本來就必須重新對照
本篇文章回覆於2018-10-22 17:15
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

Henry
檢舉此回應
@彩虹 你好 感謝你的回覆

這支功能是讓使用者選擇一個EXCEL檔
按讀取後傳回JSON 再逐筆刻在前端頁面

舉例的姓名、年齡、身高 都是EXCEL第一行的TITLE
但使用者說這些TITLE名稱之後有可能會變更 但順序不變

所以才想有沒有可以不依靠TITLE名稱的讀法
本篇文章回覆於2018-10-22 18:35
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

淺水員
檢舉此回應
如果只是語系的變化
那在前端做就好…
本篇文章回覆於2018-10-22 18:36
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
回應

淺水員
檢舉此回應
讀取 excel 檔案有用哪個函式庫嗎
看看裡面有沒有依照第 n 個欄位讀取資料的功能
本篇文章回覆於2018-10-22 18:38
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

小羊窒息
捐贈 VP 給 缺氧的羊:窒息 檢舉此回應
既然【(名稱變但順序不會變) 都會是一樣的結果(原格式列出資料)】

那就在Excel要輸出成json時, 動手腳...
第一欄固定輸出為[姓名], (不論使用者上傳的Excel第一欄取什麼名字)

就解決了
本篇文章回覆於2018-10-23 00:46
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
最有價值解答

彩虹
檢舉此回應
恩,這樣我就懂你意思了
可以做到,請參考如下的程式碼

這樣就能完全達到你的需求了∼

本篇文章回覆於2018-10-23 10:31
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
作者回應

Henry
檢舉此回應
問題解決了! 感謝彩虹大
也感謝 @淺水員 跟 @小羊窒息 的建議
本篇文章回覆於2018-10-24 16:51
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.