如何将JS对象转换为JSON

时间:2016-08-26 20:12:33

标签: javascript json

将js对象转换为json或者js对象是否恰好是JSON是可行的吗?有人能告诉我JSON究竟是什么吗?

2 个答案:

答案 0 :(得分:12)

从字面上看,JSON是一种更严格的格式,基本上是Javascript变量赋值的右侧。它是基于文本的Javascript数据编码:

var foo = ...json goes here ...;

JSON可以是 ANY 有效的Javascript数据结构。布尔值,int,字符串,甚至是数组和对象。 JSON ISN' T 是一种通用的序列化格式。像这样的东西

var foo = new Date();
json = JSON.stringify(foo); // json gets the string "2016-08-26 etc..."
newfoo = JSON.parse(json);  // newfoo is now a string, NOT a "Date" object.

不起作用。 Date对象将被序列化为JSON字符串,但反序列化字符串不会再次为您提供Date对象。它只是一个字符串。

JSON只能代表DATA,而不能代表CODE。这包括表达式

var foo = 2; // "2" is valid json
var foo = 1+1; // invalid - json does not have expressions.
var foo = {"bar":["baz"]}; // also valid JSON
var foo = [1,2,3+4]; // fails - 3+4 is an expression

答案 1 :(得分:-1)

要将JS数据对象转换为JSON,可以使用JSON.stringify()

Exmaple

输入: -

var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
JSON.stringify(person)

输出:

"{"firstName":"John","lastName":"Doe","age":50,"eyeColor":"blue"}"
相关问题