Разница между console.log (obj) и console.log (JSON.stringify (obj)) - PullRequest
1 голос
/ 05 октября 2019

После получения объекта JSON из SDK количество полей в console.log(JSON.stringify(obj)) меньше, но есть некоторые поля, которые находятся в console.log(JSON.stringify(obj)), но не в console.log(obj).

Ответы [ 3 ]

0 голосов
/ 05 октября 2019

Посмотрите на этот код, что результат в console.log мутирует.

const obj = {
  value: 5
};

console.log(obj);

setTimeout(() => {
  obj.value = 10;
}, 100);

Вы можете получить оригинальное значение, если используете console.log (JSON.stringify (obj))

const obj = {
  value: 5
};
    
console.log(JSON.stringify(obj));

setTimeout(() => {
  obj.value = 10;
}, 100);
0 голосов
/ 05 октября 2019

Когда вы получаете данные из созданного json, вы можете прояснить свой вопрос следующим образом:

1) console.log (obj) -> означает, что вы получите объект json Javascriptкак в массиве javascript serialize

2) console.log (JSON.stringify (obj)) -> означает, что вы получите этот объект json Javascript в строку, а затем будете использовать для получения данныхтаким образом for(var i in (JSON.stringify(obj)) { } вы можете легко получить данные внутри этого json

или, если вы хотите снова преобразовать в объект javascript, вы можете использовать JSON.parse(JSON.stringify(obj)), тогда данные станут объектом JavaScript.

пример:

var obj = { name: "John", age: 30, city: "New York" };

1) Use the JavaScript function JSON.stringify() to convert it into a string.

var myJSON = JSON.stringify(obj);

2) Use the JavaScript function JSON.parse() to convert text-string into a JavaScript object:

var obj = JSON.parse('{ "name":"John", "age":30, "city":"New York"}');

1) console.log(obj); 
output : {name: "John", age: 30, city: "New York"}

2) console.log(myJSON ); 
output : {"name":"John","age":30,"city":"New York"}

2) console.log( JSON.parse(myJSON )); 
output : {name: "John", age: 30, city: "New York"}

Надеюсь, я проясню ваш вопрос!

0 голосов
/ 05 октября 2019

Метод JSON.stringify () преобразует объект или значение JavaScript в строку JSON, при необходимости заменяя значения, если указана функция-заменитель, или опционально включая только указанные свойства, если указан массив-заменитель.

JSON.stringify(obj, null, 2)

Вы можете сделать его более приятным для печати. Последнее число определяет количество пробелов в отступе:

console.log(obj)

С помощью API консоли вы можете распечатать любой объект на консоли. Это будет работать в любом браузере.

...