2016-08-08 7 views
0

Wenn ich diese Antwort habe -Senden numerische JSON-Antwort in Knoten/express

{ 
    type: "2", 
    userId: "123" 
} 

Während die Antwort gesendet wird, möchte ich die Werte in numerischen konvertieren. Gibt es einen Weg in Node/Express, dies zu tun?

+0

Was ist falsch mit 'parseInt()'? –

+0

Versuchen Sie diese Frage - http://stackoverflow.com/questions/6858293/sending-json-response-as-string-and-integers – suyesh

+0

Ich möchte es Feld für Feld nicht konvertieren. Gibt es keinen anderen Weg, wo ich mein JSON in der Funktion sende und das aktualisierte JSON zurückgibt? – nirvair

Antwort

0

var _ = require ('Unterstrich');

var data = { Typ: "2", userId: "123"};

var result = _.keys (Daten);

result.forEach (Funktion (Taste) { Daten [Schlüssel] = Nummer (Daten [Schlüssel])});

console.log (Daten);

0

Wir können parseInt() verwenden, um die Zeichenfolge in int-Typ zu konvertieren.

var data = { type: parseInt("2"), userId: parseInt("2") }; 

response.send(data); 
0

Direkt beantworten ist

var a = {type: "2", userId: "123", text: "ABC"}; 
res.send(JSON.stringify(a, function(key, value) { return parseInt(value) || value})); 

Express haben spezielle Methode Objekt stringify und senden - res.json, aber diese Methode nicht replacer Funktion unterstützen.