2017-01-31 24 views
20

JSON nesnesine sahibim ve onu bir Arabellek'e dönüştürüyorum ve burada bazı işlemler yapıyorum. Daha sonra geçerli JSON nesnesine dönüştürmek için aynı arabellek verilerini dönüştürmek istiyorum.JSON Nesnesini Arabelleğe ve Arabelleğe Dönüştürme JSON nesnesine geri dön

Ben Düğüm V6.9.1 Aşağıda

üzerinde denedim kodu olduğunu çalışıyorum ama JSON'a geri dönüştürmek ve bu nesneyi açamıyor zaman ben [object object] alıyorum.

var obj = { 
    key:'value', 
    key:'value', 
    key:'value', 
    key:'value', 
    key:'value' 
} 

var buf = new Buffer.from(obj.toString()); 

console.log('Real Buffer ' + buf); //This prints --> Real Buffer <Buffer 5b 6f 62 6a 65 63 74> 

var temp = buf.toString(); 

console.log('Buffer to String ' + buf); //This prints --> Buffer to String [object Object] 

Yani ben o SyntaxError: Unexpected token o in JSON at position 2

atmak i ben de ayrıştırma çalıştı

console.log(buf[0]); // This prints --> [ 

bir dizi gibi okumaya çalışacak, bu arada

console.log('Full temp ' + require('util').inspect(buf, { depth: null })); //This prints --> '[object object]' [not printing the obj like declared above] 

incelemek kullanarak bütün nesneyi yazdırmak için çalıştı

Bunu yarattığım gibi gerçek nesne olarak görmem gerekiyor [yukarıda beyan edilen gibi].

yardım edin ..

cevap

37

Sen

var buf = Buffer.from(JSON.stringify(obj)); 

toString aramayacağım, json stringify gerekir Ve dize dönüştürmek için obj json için:

var temp = JSON.parse(buf.toString()); 
+0

işleri mükemmel :) –

+1

ihtiyacını yok yeni – jpillora