當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
Javascript 处理 JSON 数据 示例
生活随笔
收集整理的這篇文章主要介紹了
Javascript 处理 JSON 数据 示例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近做了一個 MEAN stack 的 app 。后臺用 NodeJS 從 Jira rest api 獲得JSON數據并做處理,然后前端用 AngularJS Ajax call 獲得處理后的 JSON 數據,顯示到 App 上。處理了很多 JSON 數據,決定編一個例子,寫一個總結。
JSON 數據處理,基本就是 JSON String 和 JSON Object 之間的轉換。
JSON String 轉換成 JSON Object 用 JSON.parse 方法。反之,用 JSON. Stringify 方法。
以下的簡單例子中, NodeJS 獲取到用戶訂單信息(JSON String),對信息進行處理,在希望顯示在前端的數據中 “show" field 設置為 true,反之設置為 false。然后前端從后端得到數據,將需要顯示的數據,輸出到 console 中。CodePen 示例鏈接
1. 后臺從其他服務器獲得數據并處理:
// 后臺 NodeJs 從其他網站 restAPI 得到如下 JSON String 包含了用戶一次訂單的信息。 用戶名,價格,產品信息等。 var cart_json = '{"username":"christy@gmail.com","city":"Vienna","state":"Virginia","country":"USA","products":[{"name":"PlayStation4","category":"PlayStation","price":"$399.99","quantity":1},{"name":"HD Sound Bar with Wireless Subwoofer","category":"Sound Bar","price":"$899.99","quantity":2},{"name":"POV HD Camcorder","category":"Action Cam","price":"$249.99","quantity":1}],"shipping":"$10.00","total":"$2449.96"}'; // 將 JSON String 轉化成 JSON object var cart_obj = JSON.parse( cart_json ); // 獲得 products object var products_obj = cart_obj.products; // 聲明新的 array var products_arr = []; // 遍歷 products object, 每個 field 添加相應的 field “show” 構成新的 object。 如果想展示此 field, show 值設為 true, 反之為 false。 for(var i = 0; i < Object.keys( products_obj ).length; i ++){product_name_obj = { name : products_obj[i].name, show : true };product_category_obj = { category : products_obj[i].category, show : true };product_price_obj = { price : products_obj[i].price, show : false };product_quantity_obj = { quantity : products_obj[i].quantity, show : false };//將新的 object 合到一起構成添加到新的 array 中products_arr[i] = { "product": [product_name_obj, product_category_obj, product_price_obj, product_quantity_obj] };} // 新 array 中存放的是新的 JSON object var products_obj_new = products_arr; // 將 JSON object 轉換成 JSON String var products_str_new = JSON.stringify( products_obj_new ); // 在 console 中輸出 JSON object 和 JSON String 供查看 console.log('JSON object:'); console.log( products_obj_new ); console.log('JSON String:'); console.log( products_str_new ); console 截圖如下:
2.前端從后臺獲得數據處理并顯示:
// 前端 javascript 通過 Ajax call 得到 NodeJS 生成的 JSON String var products_str_get = products_str_new; // 將 JSON String 轉換成 JSON object var products_obj_get = JSON.parse( products_str_get ); // 輸出允許輸出的 product 信息 // 遍歷 products for( var i = 0; i < Object.keys( products_obj_get ).length; i++ ){var product_obj = products_obj_get[i].product;console.log( "product " + i );//遍歷每一個 product 中的 key value pairfor ( var j = 0; j < Object.keys( product_obj ).length; j++ ){// 如果 show field 值為 true 則顯示相應產品信息if( product_obj[j].show ){var key = Object.keys( product_obj[j] )[0];var value = product_obj[j][key];console.log( key + ":" + value );}}}console 截圖如下:
總結
以上是生活随笔為你收集整理的Javascript 处理 JSON 数据 示例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux测试网络是否连通ping、te
- 下一篇: Spring Boot 单例模式中依赖注