11

したがって、javascriptでは、次のような配列があります。

[{x1:0,x2:2000,y:300},{x1:50,x2:250,y:500}]

そして、データベースの単一のフィールドに保存したいと思います。どういうわけか文字列にしてからテキストとして保存することを考えましたが、それを行うための非常に効率的で「スマートな」方法は本当にわかりません。VARBINARYフィールドタイプについても聞いたことがありますが、それらの1つにオブジェクト/配列を書き込む方法と、それを読み取る方法がわかりません...

私が本当に最も好むのは、配列として自動的に読み取られる場合です。私の MYSQL プラグイン (または js で呼び出されます) は、次のようにクエリをオブジェクトの配列として返します。

[{id:0,bla:"テキスト"},{id:0,bla:"テキスト"}]

列 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 を持つ 2 つのオブジェクトを含む配列を取得します。ここで、bla はプロパティ x1、x2、および y を持つオブジェクトの配列です。

4

1 に答える 1

16

どういうわけかそれを文字列にしてからテキストとして保存しますが、それを行うための非常に効率的で「スマートな」方法は本当にわかりません。

次のように、文字列を JSON として保存します。

var myArr = [{x1:0,x2:2000,y:300},{x1:50,x2:250,y:500}];
myArrString = JSON.stringify(myArr);

後で MySQL から JSON 文字列を取得したら、次のJSON.parse()ように を使用して配列に戻すことができます。

var myArr = JSON.parse(myArrString)

そうです、ご参考までに、JSON 機能が Javascript の標準コードベースに追加されました。それが人気の理由です。

于 2012-05-10T18:27:03.897 に答える