![](/img/trans.png)
[英]regular expression add double quotes around values and keys in javascript
[英]How to add double quotes to both keys and values for an array in javascript
我有一個包含緩沖區數據的數組,如下所示
[{ Buffer_Data: <Buffer b5 eb 2d> },{ Buffer_Data: <Buffer b5 eb 2d> },{ Buffer_Data: <Buffer b5 eb 2d> },{ Buffer_Data: <Buffer b5 eb 2d> }]
我想將雙引號添加到鍵和值中,結果應如下所示。
[{ "Buffer_Data": "<Buffer b5 eb 2d>" },{ "Buffer_Data": "<Buffer b5 eb 2d>" },{ "Buffer_Data": "<Buffer b5 eb 2d>" },{ "Buffer_Data": "<Buffer b5 eb 2d>" }]
我試過 JSON.stringify 但它以無效格式提供給我緩沖區數據。 如何將其轉換為帶雙引號的數組。 請幫忙
這是我的代碼
stream = fs.createReadStream('files/uploaded_files/' + req.body.fileName);
var bufferdata = [];
stream.on('data', async function (chunk) {
var obj = {};
obj.Buffer_Data = Buffer.from(chunk.toString('binary'), 'base64');
bufferdata.push(obj)
});
stream.on('end', async function(){
var new_buffer_data = JSON.stringify(bufferdata) // This is giving invalid value
})
我試過的代碼
stream = fs.createReadStream('files/uploaded_files/' + req.body.fileName);
var bufferdata = [];
stream.on('data', async function (chunk) {
var bytes = chunk.map(str => parseInt(str, 16));
const buf = Buffer.from(bytes);
var obj = {};
obj.Buffer_Data = buf;
buffer.push(obj)
});
stream.on('end', async function(){
const stringified = JSON.stringify(buffer.map(obj => ({Buffer_Data: stringifyBuffer(obj.Buffer_Data)})));
console.log(stringified);
})
您可以使用此方法以您指定的格式將包含Buffer
數據的對象數組字符串化:
./so-71389714.mjs
:
import {Buffer} from 'buffer';
function stringifyBuffer (buf) {
let result = '<Buffer';
for (const byte of buf) {
result += ` ${byte.toString(16)}`;
}
result += '>';
return result;
}
const bytes = ['b5', 'eb', '2d'].map(str => parseInt(str, 16));
const buf = Buffer.from(bytes);
const obj = {Buffer_Data: buf};
// This is the array in your question
const array = [obj, obj, obj, obj];
const stringified = JSON.stringify(array.map(obj => ({Buffer_Data: stringifyBuffer(obj.Buffer_Data)})));
console.log(stringified);
$ node so-71389714.mjs
[{"Buffer_Data":"<Buffer b5 eb 2d>"},{"Buffer_Data":"<Buffer b5 eb 2d>"},{"Buffer_Data":"<Buffer b5 eb 2d>"},{"Buffer_Data":"<Buffer b5 eb 2d>"}]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.