我有一个应用程序,允许用户在JS中构建东西。我希望用户能够保存他的工作的当前状态以重用它或共享它,但他拥有的是存储在JS数组中的JS对象的集合,具有非常不同的属性(颜色,标签,x / y)位置,大小等。)。
SQL对于那个特定的任务来说似乎很糟糕,迫使我为每个不同的对象维护表,而且我对NoSQL数据库知之甚少。你会用什么工具来执行此操作? MongoDB听起来很有希望,但在我学习一个全新的数据库范例之前,我想确保我正朝着正确的方向前进。
答案 0 :(得分:4)
对象到字符串:
您可以将对象作为JSON字符串存储在数据库中。这是一个简单的例子:
var foo = new Object();
foo.Name = "James";
foo.Gender = "Male";
//Result: {"Name":"James","Gender":"Male"}
var stringRepresentation = window.JSON.stringify(foo);
字符串到对象:
要将字符串转换回对象,只需致电window.JSON.parse()
:
var myObject = window.JSON.parse(stringRepresentation);
答案 1 :(得分:0)
如果您没有兴趣查询对象的各种属性,但只保留它们以保存状态,您可以将整个数组序列化为JSON并将其存储在您喜欢的任何数据库中作为一个字符串。
答案 2 :(得分:0)
服务器上有什么?
大多数语言都有成熟的JSON实现,可以将JavaScript对象转换为本机类型,然后可以轻松地将它们存储在SQL数据库中。