Định dạng json nodejs

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

Định dạng json nodejs

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 printlà 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ệp

var 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

Làm cách nào để định dạng tệp JSON trong nút js?

Đọc/ghi tệp JSON bằng nút. .
Đọc dữ liệu JSON từ đĩa
Tìm hiểu cách sử dụng mô-đun fs để tương tác với hệ thống tệp
Lưu giữ dữ liệu vào tệp JSON
Sử dụng JSON. phân tích cú pháp và JSON. stringify để chuyển đổi dữ liệu sang và từ định dạng JSON

Làm cách nào để in dữ liệu ở định dạng JSON trong nodejs?

Nếu bạn chỉ muốn in một đối tượng đẹp và không xuất nó dưới dạng JSON hợp lệ, bạn có thể sử dụng bảng điều khiển . dir() . Nó sử dụng đánh dấu cú pháp, thụt đầu dòng thông minh, loại bỏ dấu ngoặc kép khỏi các phím và chỉ làm cho đầu ra đẹp nhất có thể. Dưới mui xe, nó là một phím tắt cho bảng điều khiển.

Làm cách nào để định dạng tệp JSON?

Bạn có thể định dạng tài liệu JSON của mình bằng cách sử dụng Ctrl+Shift+I hoặc Định dạng tài liệu từ menu ngữ cảnh .

Làm cách nào để làm đẹp JSON trong JavaScript?

Để in JSON đẹp mắt trong JavaScript, bạn có thể sử dụng JSON. phương thức stringify(obj, replacer, space) . Tham số thứ ba của JSON. Phương thức stringify() chỉ định số lượng khoảng trắng sẽ sử dụng khi xuất chuỗi JSON.