Преобразование объекта JS в строку JSON

Если я определил объект в JS с помощью:

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

Как преобразовать объект в JSON? Строка вывода должна быть:

'{"name":"binchen"}'
860
задан 12 нояб. '10 в 11:20
источник поделиться
20 ответов

У всех современных браузеров встроена встроенная поддержка JSON. До тех пор, пока вы не имеете дело с доисторическими браузерами, такими как IE6/7, вы можете сделать это так же просто:

var j={"name":"binchen"};
JSON.stringify(j); // '{"name":"binchen"}'
1392
ответ дан 12 нояб. '10 в 11:31
источник

С JSON.stringify() найдено в json2.js или является родным в большинстве современных браузеров.

   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.
83
ответ дан 12 нояб. '10 в 11:22
источник

Ознакомьтесь с обновленным/лучшим способом:

Обновление 17 мая 2008 г.: Малый дезинфицирующее средство добавлен в метод toObject. Теперь toObject() не будет eval() строка если он обнаруживает какой-либо вредоносный код в it.For еще больше безопасности: не устанавливайте флаг includeFunctions равен true.

Дуглас Крокфорд, отец концепции JSON, написал один из первых строковых инструментов для JavaScript. Позже Стив Йен на Trim Path написал приятную улучшенную версию, которую я использовал в течение некоторого времени. Это мои изменения в версии Стива, которые я хотел бы поделиться с вами. В основном они проистекали из моего желания сделать стробоскоп:

• handle and restore cyclical references  
• include the JavaScript code for functions/methods (as an option)  
• exclude object members from Object.prototype if needed.
23
ответ дан 12 нояб. '10 в 11:26
источник

Вы можете использовать метод JSON.stringify() для преобразования объекта JSON в String.

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

Для обратного процесса вы можете использовать метод JSON.parse() для преобразования строки JSON в объект JSON.

12
ответ дан 20 нояб. '15 в 13:05
источник

Json Stringify может преобразовать ваш js-объект в json

 var x = {"name" : "name1"};
 JSON.stringify(x);
11
ответ дан 03 нояб. '15 в 14:44
источник
JSON.stringify({"key":"value"});
8
ответ дан 25 июня '15 в 16:25
источник

Если вы используете AngularJS, фильтр 'json' должен сделать это:

<span>{{someObject | json}}</span>
8
ответ дан 11 сент. '15 в 8:38
источник

В угловом JS

angular.toJson(obj, pretty);

OBJ: Вход для сериализации в JSON.

очень (по желанию):
Если установлено значение true, вывод JSON будет содержать символы новой строки и пробелы. Если задано целое число, вывод JSON будет содержать это много пробелов для отступов.

(по умолчанию: 2)

7
ответ дан 08 мая '16 в 11:13
источник

JSON.stringify превращает объект Javascript в текст JSON и сохраняет этот текст JSON в строке.

Преобразование - это Object to String

JSON.parse превращает строку текста JSON в объект Javascript.

Преобразование - это String to Object

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

чтобы сделать возможным использование строки JSON.

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

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

Для получения дополнительной информации вы можете обратиться к этой ссылке ниже.

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

5
ответ дан 13 февр. '17 в 16:15
источник
var someObj = { "name" : "some name" };
var someObjStr = JSON.stringify(someObj);
console.log( someObjStr  );
4
ответ дан 29 июня '16 в 10:36
источник

JSON.stringify(j,null,4) предоставит вам украшенный JSON на случай, если вам понадобится украшение.

4
ответ дан 15 нояб. '16 в 17:21
источник

У меня возникли проблемы с сокращением нехватки памяти, и другие решения, похоже, не работали (по крайней мере, я не мог заставить их работать), когда я наткнулся на эту тему. Благодаря Rohit Kumar Я просто перебираю через свой очень большой объект JSON, чтобы остановить его от сбоев

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 предоставит вам представление строки (как уже упоминалось в этом разделе), кроме случаев, когда у вас большой объект, это также должно работать - просто убедитесь, что вы построили его в соответствии с вашими потребностями - Мне нужно было иметь имя, кроме массива

4
ответ дан 13 сент. '16 в 19:53
источник

Один пользовательский определенный для этого, пока мы не странно из метода stringify

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);

OUTPUT

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

LIVE http://jsfiddle.net/mailmerohit5/y78zum6v/

3
ответ дан 12 окт. '15 в 12:57
источник

Просто скопируйте и выполните pase

$("form").submit(function(evt){
  evt.preventDefault();
  var formData = $("form").serializeArray(); // Create array of object
  var jsonConvertedData = JSON.stringify(formData);  // Convert to json
});
2
ответ дан 28 нояб. '16 в 6:42
источник

const obj = { "name":"xxx", "city":"York"};
const myJSON = JSON.stringify(obj);
  console.log(myJSON);
2
ответ дан 23 мая '17 в 15:54
источник

Woking... Прост в использовании

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

Спасибо

2
ответ дан 28 нояб. '16 в 6:39
источник

если вы хотите получить значение свойств json в формате строки, используйте следующий способ

var i = {"x":1}

var j = JSON.stringify(i.x);

var k = JSON.stringify(i);

console.log(j);

"1"

console.log(k);

'{"x":1}'
1
ответ дан 29 нояб. '16 в 18:10
источник

вы можете использовать собственную функцию stringify, подобную этой

const j={ "name": "binchen" }

/** convert json to string */
const jsonString = JSON.stringify(j)

console.log(jsonString) // {"name":"binchen"}
1
ответ дан 14 окт. '16 в 13:37
источник

определить объект

let obj = {
"firstname" : "Hello",
"lastname" : "javascript"

};

затем преобразуйте его в строку с помощью этого кода

strObj= JSON.stringify(obj);

чтобы убедиться, что консоль получена.

console.log(strObj);
0
ответ дан 28 окт. '17 в 3:08
источник

если у вас есть json-строка, и она не завернута в [], а затем заверните сначала

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

ИЛИ

var jsonobj = eval('(' + str + ')');
console.log(jsonobj);
-17
ответ дан 16 нояб. '14 в 9:13
источник

Другие вопросы по меткам или Задайте вопрос