JSON簡介及其應用
A Brief Introduction and Applications of JSON
By Jackson@ML
1. JSON的概念
JSON(JavaScript Object Notation) 是一種輕量級的數據交換格式,采用鍵值對(key-value)的方式組織數據,語法類似JavaScript對象,易于人閱讀和機器解析。
2. JSON的作用
JSON有幾方面的作用如下:
? 在前后端數據交互中傳輸結構化數據
? 用于API響應與請求格式(如RESTful API)
? 常見于配置文件(如.json)和持久化存儲格式
3. JSON的使用方法與編寫步驟
1) 使用花括號 {} 表示對象
2) 使用中括號 [] 表示數組
3) 鍵用雙引號包裹,值可以是字符串、數字、布爾值、數組或對象
4) 不允許注釋
4. 代碼示例
示例一: 以下是對某個人的對象特征描述的JSON格式。
{"name": "Jackson","age": 30,"languages": ["JavaScript", "Python", "Java"],"isActive": true
}
示例二: 以下是對某個團隊成員記錄的數組描述的JSON格式。
{
"employees":[{"firstName":"John", "lastName":"Doe"},{"firstName":"Anna", "lastName":"Smith"},{"firstName":"Peter", "lastName":"Jones"}
]
}
盡管示例一、示例二存儲的對象信息不同,但可以看出共同點,以及對單個對象的鍵值對,和對單個對象單一鍵對應的字符串值組成的數組,均可以用JSON格式來表達。
5. JSON助力Web開發功能
JSON有效且廣泛用于Web開發,它主要有以下特點:
1) 與服務器交換數據更高效,且比XML語言更加簡潔;
2) 可在Web站點前端異步加載數據(例如:AJAX,fetch);
3) 是API調用的通用格式,并且支持跨平臺和多語言開發。
4) 可用于本地存儲(localStorage)。
6. 在JavaScript中的應用
我們可以看看在JavaScript語言中,用來解析和生成JSON的示例如下:
// 將對象轉為JSON字符串
const jsonString = JSON.stringify(data);// 將JSON字符串轉為JavaScript對象
const obj = JSON.parse(jsonString);
7. 在Node.js常見場景的應用
7.1 應用場景一:讀取本地的JSON配置文件
許多Node.js后端項目使用JSON存儲配置或數據。示例代碼如下。
1) config.json
{"port": 3000,"db": "mongodb://localhost:27017/mydb"
}
2) JavaScript代碼示例app.js
const fs = require('fs');// 讀取 JSON 文件并解析為對象
const config = JSON.parse(fs.readFileSync('config.json', 'utf-8'));console.log(`Server will run on port: ${config.port}`);
7.2 應用場景二:與前端通信時,發送JSON響應
在構建Web API時,Node.js常用JSON響應客戶端請求。
示例:利用Express構建JSON API
const express = require('express');
const app = express();app.get('/api/user', (req, res) => {res.json({id: 1,name: 'Jackson',active: true});
});app.listen(3000, () => {console.log('API server running on http://localhost:3000');
});
7.3 應用場景三:處理客戶端提交的JSON數據
- 首先,使用中間件解析前端POST請求中的JSON。示例代碼如下:
app.use(express.json()); // 中間件app.post('/api/data', (req, res) => {const data = req.body;console.log('Received data:', data);res.send('Data received');
});
- 其次,前端發送請求:
fetch('/api/data', {method: 'POST',headers: {'Content-Type': 'application/json'},body: JSON.stringify({name: 'Jackson', score: 100})
});
8. 連接MongoDB數據庫的應用
MongoDB是典型的文檔型數據庫,在互聯網崛起的今天,廣泛應用于Web站點、數據庫和大數據領域。
為了使用MongoDB,我們可以安裝Python第三方庫mongoose,執行以下命令即可完成安裝(前提是已經安裝Node.js且node包管理器npm可用):
$ npm install mongoose
完成安裝后,可以使用mongoos來保存JSON數據,示例代碼如下:
const mongoose = require('mongoose');// 1. 連接數據庫
mongoose.connect('mongodb://localhost:27017/myapp', {useNewUrlParser: true,useUnifiedTopology: true
});// 2. 定義數據模型(Schema)
const UserSchema = new mongoose.Schema({name: String,age: Number,email: String
});
const User = mongoose.model('User', UserSchema);// 3. 插入 JSON 對象
const userData = {name: 'Jackson',age: 30,email: 'jackson@example.com'
};const newUser = new User(userData);
newUser.save().then(() => console.log('User saved to MongoDB'));
也可以查詢JSON數據,示例代碼如下:
User.find({ name: 'Jackson' }).then(users => {console.log('Found users:', users);
});
9. 小結
JSON 是一種輕量級、易讀寫的數據交換格式,采用鍵值對結構,廣泛應用于 Web 開發。它與 JavaScript 原生兼容,支持對象、數組、字符串等數據類型。
在 Node.js 中,JSON 常用于配置管理、API 數據交互與文件讀寫;結合 MongoDB 使用時,JSON 可直接映射為文檔結構,便于數據插入、查詢與持久化,提升前后端通信與數據庫操作的效率。
Web開發技術文章持續推出,歡迎關注、收藏和點贊👍。
您的認可,我的動力!😃
推薦閱讀:
- 用Streamlit開發第一個Pythong應用程序
- 一分鐘了解Transformer
- 一分鐘了解Kubernetes
- 一分鐘了解MCP
- 一分鐘了解機器學習
- 一分鐘了解大語言模型(LLM)
- 一分鐘了解深度學習