[JavaScript] 將 CSV 檔案轉換成 JSON 資料

我們在拿到客戶提供的資料的時候常常會拿到 excel 檔案(這算幸福的)
至少我們可以簡單的利用一些軟體轉成 csv丟進資料庫裡處理。如果搭配個後端 API 基本上資料都不會是太大的問題可以做成 JSON 供 JavaScript 使用,但是如果在沒有後端或是資料庫的環境中呢?


首先我們先把 csv 檔案放到 server上 利用 $.get() 取得內容,接著將內容String 丟進我們待會會用到的 csvJSON 外掛 function 中。就會取得 JSON
但是這個時候的 JSON 還是 String 的形態所以還無法被解析,我們再加個 JSON.parse() 就可以拿到整個 JSON 物件摟!


function 來源:
https://gist.github.com/iwek/7154578

Firebase database 在 web 上面的基礎運用 (搜尋資料內容)


我們要在 firebase database 中取得資料,其實可以利用 key 的方式取得。就會非常的省事。只需要指定好 ref 的路徑。像這樣:

firebase.database().ref("/member/key").on("value",function(data){
 console.log(data.val());
})

但是我們並不是一定會拿到key,很多情況下我們要搜尋某個值的存在,例如要找人名或電話號碼之類的。這時候我們需要另一個方式來達成:


 firebase.database().ref("/member").orderByChild("mobile").equalTo("我的電話號碼").on('value', function(data) {
    console.log(data.val());
  });

這時候 firebase 就會去幫你找出裡面的節點 mobile 是 我的電話號碼的資料啦!
其中 orderByChild 就是去找這個節點
equalTo 就是符合的資料內容


相關資料
Firebase database 在 web 上面的基礎運用 (讀取資料)
Firebase database 在 web 上面的基礎運用 (新增資料)
Firebase Doc

留言

劉騏源寫道…
您好我嘗試使用
firebase.database().ref("/member").orderByChild("mobile").equalTo("我的電話號碼").on('value', function(data) {
console.log(data.val());
});

但是我會出現Consider adding ".indexOn": "value" at /phone/name/ 的error
想詢問在firebase中rule要如何修正呢??(因為我想搜尋某個節點下的數值,再rule節點中需要設定哪個呢?是最高節點嗎?)
周駿憲寫道…
會出現這個問題是要在規則那邊下沒錯
你可以看一下這邊
Index Your Data
劉騏源寫道…
您好我似乎無法開啟您的網頁(只能看到部分),查詢您的回應!麻煩您了

這個網誌中的熱門文章

利用 google MAP API 取得座標之間的距離

JavaScript 將 Array 和 Object 轉成 JSON

讓 PHP 接收 post 的 json 資料