Converteren JS-object naar JSON String

Als ik een object in JS heb gedefinieerd met:

var j={"name":"binchen"};

Hoe kan ik het object naar JSON converteren? De uitgangsreeks moet zijn:

'{"name":"binchen"}'

Antwoord 1, Autoriteit 100%

Alle huidige browsers hebben inheemse JSON-ondersteuning gebouwd. Dus zolang u niet te maken hebt met prehistorische browsers zoals IE6 / 7, kunt u het net zo gemakkelijk doen als dat:

var j = {
  "name": "binchen"
};
console.log(JSON.stringify(j));

Antwoord 2, Autoriteit 6%

Met JSON.stringify()gevonden in json2.js of inheemse in de meeste moderne browsers.

  JSON.stringify(value, replacer, space)
        value       any JavaScript value, usually an object or array.
       replacer    an optional parameter that determines how object
                    values are stringified for objects. It can be a
                    function or an array of strings.
       space       an optional parameter that specifies the indentation
                    of nested structures. If it is omitted, the text will
                    be packed without extra whitespace. If it is a number,
                    it will specify the number of spaces to indent at each
                    level. If it is a string (such as '\t' or ' '),
                    it contains the characters used to indent at each level.
       This method produces a JSON text from a JavaScript value.

Antwoord 3, autoriteit 2%

Bekijk bijgewerkte/betere manier door Thomas Frank:

Update 17 mei 2008: Klein ontsmettingsmiddel
toegevoegd aan de toObject-methode. Nu
toObject() zal de string niet evalueren()
als het een kwaadaardige code vindt in
it.Voor nog meer veiligheid: Niet instellen
de includeFunction-vlag naar true.

Douglas Crockford, de vader van het JSON-concept, schreef een van de eerste stringifiers voor JavaScript. Later schreef Steve Yen van Trim Path een mooie verbeterde versie die ik al een tijdje gebruik. Het zijn mijn wijzigingen aan Steve’s versie die ik graag met je wil delen. Eigenlijk kwamen ze voort uit mijn wens om de stringifier te maken:

  • omgaan met en herstellen van cyclische verwijzingen
  • voeg de JavaScript-code voor functies/methoden toe (als optie)
  • indien nodig objectleden uitsluiten van Object.prototype.

Antwoord 4

U kunt de methode JSON.stringify()gebruiken om het JSON-object naar String te converteren.

var j={"name":"binchen"};
JSON.stringify(j)

Voor een omgekeerd proces kunt u de methode JSON.parse()gebruiken om JSON String naar JSON Object te converteren.


Antwoord 5

JSON.stringify(j, null, 4)zou je een verfraaide JSON geven voor het geval je ook verfraaiing nodig hebt

De tweede parameter is vervanger. Het kan worden gebruikt als filter, waar u bepaalde sleutelwaarden kunt filteren bij het stringificeren. Indien ingesteld op null, worden alle sleutelwaardeparen geretourneerd


Antwoord 6

In angularJS

angular.toJson(obj, pretty);

object:
Invoer die moet worden geserialiseerd in JSON.

mooi(optioneel):
Indien ingesteld op waar, bevat de JSON-uitvoer nieuwe regels en witruimte. Indien ingesteld op een geheel getal, bevat de JSON-uitvoer zoveel spaties per inspringing.

(standaard: 2)


Antwoord 7

Als je AngularJS gebruikt, zou het ‘json’-filter het moeten doen:

<span>{{someObject | json}}</span>

Antwoord 8

JSON.stringifyzet een Javascript-object om in JSON-tekst en slaat die JSON-tekst op in een string.

De conversie is een Object to String

JSON.parseverandert een reeks JSON-tekst in een Javascript-object.

De conversie is een String to Object

var j={"name":"binchen"};

om er een JSON String van te maken kan het volgende worden gebruikt.

JSON.stringify({"key":"value"});
JSON.stringify({"name":"binchen"});

Voor meer informatie kun je deze link hieronder raadplegen.

https://developer.mozilla.org/ nl/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify


Antwoord 9

Eén speciaal hiervoor gedefinieerd, totdat we vreemd gaan met de stringify-methode

var j={"name":"binchen","class":"awesome"};
var dq='"';
var json="{";
var last=Object.keys(j).length;
var count=0;
for(x in j)
{
json += dq+x+dq+":"+dq+j[x]+dq;
count++;
if(count<last)
   json +=",";
}
json+="}";
document.write(json);

UITVOER

{"name":"binchen","class":"awesome"}

LIVEhttp://jsfiddle.net/mailmerohit5/y78zum6v/


Antwoord 10

Ik had problemen met het onvoldoende geheugen van stringify en andere oplossingen leken niet te werken (ik kon ze tenminste niet aan het werk krijgen), en toen kwam ik deze thread tegen. Dankzij Rohit Kumardoorloop ik mijn zeer grote JSON-object om te voorkomen dat het crasht

var j = MyObject;
var myObjectStringify = "{\"MyObject\":[";
var last = j.length
var count = 0;
for (x in j) {
    MyObjectStringify += JSON.stringify(j[x]);
    count++;
    if (count < last)
        MyObjectStringify += ",";
}
MyObjectStringify += "]}";

MyObjectStringify zou u uw tekenreeksrepresentatie geven (net zoals andere keren in deze thread vermeld), behalve als u een groot object heeft, dit zou ook moeten werken – zorg er alleen voor dat u het bouwt om aan uw behoeften te voldoen– Ik wilde dat het een naam had dan array


Antwoord 11

Wakker… Makkelijk te gebruiken

$("form").submit(function(evt){
  evt.preventDefault();
  var formData = $("form").serializeArray(); // Create array of object
  var jsonConvert = JSON.stringify(formData);  // Convert to json
});

Bedankt


Antwoord 12

u kunt de native stringify-functie op deze manier gebruiken

const j={ "name": "binchen" }
/** convert json to string */
const jsonString = JSON.stringify(j)
console.log(jsonString) // {"name":"binchen"}

Antwoord 13

als u de waarde van json-eigenschappen in tekenreeksindeling wilt krijgen, gebruikt u de volgende manier

var i = {"x":1}
var j = JSON.stringify(i.x);
var k = JSON.stringify(i);
console.log(j);
"1"
console.log(k);
'{"x":1}'

Antwoord 14

Voor foutopsporing in Node JS kun je util.inspect()gebruiken. Het werkt beter met kringverwijzingen.

var util = require('util');
var j = {name: "binchen"};
console.log(util.inspect(j));

Antwoord 15

De bestaande JSON-vervangingen waren te veel voor mij, dus schreef ik mijn eigen functie. Dit lijkt te werken, maar ik heb mogelijk verschillende randgevallen gemist (die niet voorkomen in mijn project). En zal waarschijnlijk niet werken voor reeds bestaande objecten, alleen voor zelfgemaakte gegevens.

function simpleJSONstringify (obj) {
    var prop, str, val,
        isArray = obj instanceof Array;
    if (typeof obj !== "object")
        return false;
    str = isArray ? "[" : "{";
    function quote (str) {
        if (typeof str !== "string")
            str = str.toString ();
        // When the actual variable was a number, it was returning a number between quotation marks
        // return str.match(/^\".*\"$/) ? str : '"' + str.replace(/"/g, '\\"') + '"';
        // Now, we are verifing if is a number and, if it is, we remove the quotation marks
        str = str.match (/^\".*\"$/) ? str : '"' + str.replace (/"/g, '\\"') + '"';
        if (isNaN (str.replace (/^["]/, '').replace (/["]$/, '')))
            return str;
        else
            return str.replace (/^["]/, '').replace (/["]$/, '');
    }
    for (prop in obj) {
        if (!isArray) {
            // quote property
            str += quote (prop) + ": ";
        }
        // quote value
        val = obj [prop];
        str += typeof val === "object" ? simpleJSONstringify (val) : quote (val);
        str += ", ";
    }
    // Remove last colon, close bracket
    str = str.substr (0, str.length - 2) + ( isArray ? "]" : "}" );
    return str;
}

Antwoord 16

So in order to convert a js object to JSON String: 

De eenvoudige syntaxis voor het converteren van een object naar een string is

JSON.stringify(value)

De volledige syntaxis is:
JSON.stringify(waarde[, vervanger [, spatie]])

Laten we enkele eenvoudige voorbeelden bekijken. Merk op dat de hele string krijgt
dubbele aanhalingstekens en alle gegevens in de tekenreeks krijgen een escape als
nodig.

JSON.stringify("foo bar"); // ""foo bar""
JSON.stringify(["foo", "bar"]); // "["foo","bar"]"
JSON.stringify({}); // '{}'
JSON.stringify({'foo':true, 'baz':false}); /* " 
{"foo":true,"baz":false}" */
const obj = { "property1":"value1", "property2":"value2"};
const JSON_response = JSON.stringify(obj);
console.log(JSON_response);/*"{ "property1":"value1", 
"property2":"value2"}"*/

Antwoord 17

Gebruik gewoon JSON.stringifyom dergelijke conversie te doen – onthoud echter dat velden die undefined-waarde niet in JSON

zijn opgenomen

var j={"name":"binchen", "remember":undefined, "age": null };
var s=JSON.stringify(j);
console.log(s);

Antwoord 18

Convert Str = & GT; obj

const OnePLUSSSTR = ‘[{“merk”: “OnePlus”}, {“Model”: “7T”}]’;

const onplusobj = json.parse (oneplocsstr);

converteren obj = & gt; str

const onplusobjtoStr = json.stringify (onepleststr);

Referenties van JSON-parsering in JS:

JSON.parse (): klik

JSON.Strationify (): Klik op


Antwoord 19

U kunt JSON.Strationify () -methode gebruiken om JSON-object om te zetten naar string.

var j={"name":"hello world"};
JSON.stringify(j);

Om deze tekenreeks te converteren naar JSON-object, kunt u de methode van JSON.parse () gebruiken.


Antwoord 20

Gebruik JSON.stringify(param1, param2, param3);

wat is: –

Param1 – & GT; waarde om naar JSON

te converteren

Param2 – & GT; functie om op uw eigen manier te strijven. Als alternatief dient het als een witte lijst waarvoor objecten moeten worden opgenomen in de laatste JSON.

Param3 – & GT; Een getalatype dat aangeeft dat het aantal witruimtes wordt toegevoegd. Max toegestaan ​​zijn 10.


Antwoord 21

Zeer eenvoudig te gebruiken methode, maar gebruik het niet in release (vanwege mogelijke compatibiliteitsproblemen).

Geweldig voor het testen aan uw zijde.

Object.prototype.toSource()
//Usage:
obj.toSource();

Antwoord 22

Gebruik de stringify-functie

var j = {
"name":"binchen"
};
var j_json = JSON.stringify(j);
console.log("j in json object format :", j_json);

Happy Codering !!!


Antwoord 23

De meest populaire manier is hieronder:

var obj = {name: "Martin", age: 30, country: "United States"};   
// Converting JS object to JSON string
var json = JSON.stringify(obj);
console.log(json);

Antwoord 24

Gebruik de JSON.stringify()methode:

const stringified = JSON.stringify({})  // pass object you want to convert in string format

Antwoord 25

Gebruik gewoon JSON.Strationify (Your_Variablename) Het zal je JSON-object converteren naar string en als je een string wilt converteren om te bezoeken om te gebruiken Gebruik JSON.parse (Your_variablename)


Antwoord 26

Gebruik dit,

var j={"name":"binchen"};
 var myJSON = JSON.stringify(j);

Antwoord 27

als je een json-tekenreeks hebt en deze is niet omwikkeld met [], sluit deze dan eerst af

var str = '{"city": "Tampa", "state": "Florida"}, {"city": "Charlotte", "state": "North Carolina"}';
str = '[' + str + ']';
var jsonobj = $.parseJSON(str);

OF

var jsonobj = eval('(' + str + ')');
console.log(jsonobj);

Other episodes