Storing a javascript array that contains objects in a MYSQL database?
所以在javascript中,我有一个类似这样的数组:
[{x1:0,x2:2000,y:300},{x1:50,x2:250,y:500}]
号
我想把它存储在数据库中的一个字段中。我想把它做成一个字符串,然后把它保存为文本,但我真的不知道一个非常有效和"聪明"的方法。我也听说过varbinary字段类型,但我不知道如何将其写入其中一个字段和对象/数组,以及如何读取它…
我最喜欢的是,如果它自动作为数组读取的话。我的MySQL插件(或者JS中调用的插件)将我的查询作为对象数组返回,比如:
[{id:0,bla:"text"},{id:0,bla:"text"}]
号
用于具有列ID和BLA的表中的查询。
假设我的数组存储在bla中,我希望返回的对象与此完全相同(但是如果不可能,我可以使用其他解决方案)。
[{id:0,bla:[{x1:0,x2:2000,y:300},{x1:50,x2:250,y:500}]},{id:0,bla:[{x1:0,x2:2000,y:300},{x1:50,x2:250,y:500}]}]
号
所以基本上我会得到一个包含两个对象的数组,每个对象都有属性bla和id,其中bla是一个具有属性x1、x2和y的对象数组。
somehow making it a string and then saving it as text, but I don't really know a very efficient and"smart" way to do that.
号
将字符串另存为json,如下所示:
1
2 var myArr = [{x1:0,x2:2000,y:300},{x1:50,x2:250,y:500}];
myArrString = JSON.stringify(myArr);稍后,当您从MySQL中得到JSON字符串时,您可以将其转换回带有
JSON.parse() 的数组,如下所示:
1 var myArr = JSON.parse(myArrString)号
是的,如果您想知道,JSON功能已经添加到了JavaScript的标准代码库中:这就是它的流行程度。