JSON.stringify[]
là cách chính tắc để chuyển đổi một đối tượng JavaScript thành JSON. Nhiều khung JavaScript sử dụng JSON.stringify[]
trong nội bộ, như Express' res.json[]
và body serialization của Axios. Tuy nhiên, theo mặc định, JSON.stringify[]
xuất ra JSON được rút gọn, không có khoảng trắng hoặc màu sắc
Trong bài viết này, tôi sẽ giải thích cách làm cho đầu ra JSON.stringify[]
dễ đọc hơn
Sử dụng tham số spaces
Tham số thứ 3 của JSON.stringify[]
được gọi là spaces
. Nếu khoảng trắng không phải là không xác định, thì JSON.stringify[]
sẽ đặt mỗi phím trên dòng riêng của nó và thêm tiền tố vào mỗi phím bằng spaces
. Nếu spaces
là một số, thì đó là số khoảng cách mà JSON.stringify[]
2 JSON.stringify[]
sẽ đặt trước mỗi phím
Nếu bạn đặt spaces
thành một chuỗi, thì JSON.stringify[]
sẽ sử dụng chuỗi đó làm tiền tố. Ví dụ: đây là cách bạn có thể thêm tiền tố vào mỗi phím bằng cách sử dụng tab thay vì dấu cách
Đối với các khung mà bạn không gọi trực tiếp JSON.stringify[]
, thường có một tùy chọn để đặt tham số spaces
. Ví dụ: điều đó cho phép bạn đặt spaces
cho tất cả các cuộc gọi res.json[]
Axios không có tùy chọn rõ ràng để định dạng JSON, nhưng bạn có thể sử dụng tùy chọn JSON.stringify[]
1 để tự xử lý tuần tự hóa JSON. Điều này cho phép bạn định dạng JSON
Gói npm prettyjson là một cách tuyệt vời để thêm định dạng màu gọn gàng vào đầu ra JSON của bạn. Prettyjson chỉ hoạt động trên CLI, bạn sẽ không nhận được màu nếu bạn gửi đầu ra prettyjson dưới dạng phản hồi HTTP
Dưới đây là một ví dụ về JSON in đẹp từ Node. js sử dụng prettyjson
const prettyjson = require['prettyjson'];
console.log[prettyjson.render[{ name: 'Jean-Luc Picard', rank: 'Captain', ship: 'Enterprise D' }]];
Dưới đây là đầu ra của tập lệnh trên trông như thế nào
tiếp tục
JSON.stringify[]
có một số tính năng gọn gàng. Đặc biệt, tham số spaces
giúp định dạng JSON dễ dàng hơn nhiều. trong nút. js, bạn cũng có thể sử dụng một công cụ như prettyjson để thêm đánh dấu để dễ đọc hơn
Pretty print
là một cách in các đối tượng JSON với thụt đầu dòng, tab và khoảng trắng chính xác và các nhà phát triển có thể dễ dàng đọc được những điều này
Điều này sẽ rất hữu ích cho việc kiểm tra một đối tượng JSON trong quá trình gỡ lỗi
Có nhiều cách chúng ta có thể làm điều đó,
Sử dụng JSON. phương pháp xâu chuỗi
Phương thức xâu chuỗi JSON Chuyển đổi đối tượng Javascript thành chuỗi json bằng cách thêm khoảng trắng vào chuỗi JSON và in ở định dạng dễ đọc
Chuỗi JSON chứa các đối tượng không có dấu cách trong employee. json
[{"name":"eric","id":"1"},{"name":"andrew","id":"2"},{"name":"john","id":"3"},{"name":"Flintoff","id":"4"},{"name":"Greg","id":"5"},{"name":"Francis","id":"6"}]
Đây là ví dụ in đẹp của nodejs
var fs = require['fs'];
fs.readFile['employee.json', 'utf8', function [err, data] {
if [err] {
console.log[err];
} else {
console.log[JSON.stringify[JSON.parse[data], null, 4]];
}
}];
Đầu tiên, Tạo đối tượng hệ thống tệp gốc
var fs = require['fs'];
fs.readFile['employee.json', 'utf8', function [err, data] {
if [err] {
console.log[err];
} else {
console.log[JSON.stringify[JSON.parse[data], null, 4]];
}
}];
0- đọc tệp bằng readFile, trả về lệnh gọi lại lỗi và dữ liệu
- trả về đối tượng json in đẹp trước khi phân tích nội dung json bằng đối tượng JSON
sử dụng thư viện npm đẹp hơn
đẹp hơn là một trình định dạng mã có hỗ trợ cho các ngôn ngữ lập trình chính
Đầu tiên, Cài đặt thư viện npm đẹp hơn
npm install prettier --save-dev
Đây là mã cho Prettier để định dạng json
var jsonData = '{ "active": true, "id": 1, "name": "john" }';
console.log[prettier.format[JSON.stringify[jsonData], { semi: false, parser: "json" }]];
Cách đọc tệp JSON bên ngoài trong Ứng dụng Nodejs
Thật dễ dàng để đọc các tệp dữ liệu json trong Javascript
Có nhiều cách chúng ta có thể đạt được nó
sử dụng phương thức readFile để đọc tệp json không đồng bộ
Hãy có một tệp
var fs = require['fs'];
fs.readFile['employee.json', 'utf8', function [err, data] {
if [err] {
console.log[err];
} else {
console.log[JSON.stringify[JSON.parse[data], null, 4]];
}
}];
1 chứa dữ liệu sau[
{
"name": "eric",
"id": "1"
},
{
"name": "andrew",
"id": "2"
},
{
"name": "john",
"id": "3"
},
{
"name": "Flintoff",
"id": "4"
},
{
"name": "Greg",
"id": "5"
},
{
"name": "Francis",
"id": "6"
}
]
Các tệp JSOn có thể được phân tích cú pháp theo các cách Không đồng bộ và Đồng bộ
Cách đọc và phân tích cú pháp tệp JSON không đồng bộ đây là một ví dụ
var fs = require['fs'];
fs.readFile['employee.json', 'utf8', function [err, data] {
if [err] {
console.log[err];
} else {
console.log[JSON.stringify[JSON.parse[data], null, 4]];
}
}];
2 để đọc tệp JSON bên ngoài cục bộ readFile là một hoạt động không đồng bộ với lỗi giữ gọi lại, lỗi về trạng thái đọc tệp, dữ liệu giữ nội dung của tệpvar fs = require['fs'];
fs.readFile['employee.json', 'utf8', function [err, data] {
if [err] {
console.log[err];
} else {
console.log[JSON.parse[data]];
}
}];
Một cách khác, phân tích đồng bộ tệp json bằng cách sử dụng yêu cầu trong nodejs
Đây là một người dùng. tập tin json
{ "active": true, "id": 1, "name": "john" }
trong nút. js, Nhập tệp json bằng từ khóa yêu cầu và Nó chứa nội dung của tệp dưới dạng đối tượng javascript