2
マップで行うことができるので、ダーツのコレクションからJSON文字列を作成するにはどうすればよいですか。ドキュメントでは、JSON.stringify()
メソッドにマップまたは配列を渡すことができます。しかし、DartにArrayデータ型はなく、コレクションを渡すことで例外が発生します。ダーツのコレクションをJSON.stringifyするには
私は素朴な回避策をしましたが、これを行うには良い方法があるでしょう場合、私は疑問に思う:リストを渡す
String s = '[';
bool first=true;
_set.forEach(function(item){
if (first) {
first = false;
} else {
s+=',';
}
s += JSON.stringify(item);
});
s +=']';
print(s);
return s;
なぜあなたはSetが動作しないと思いますか? ListとSetの両方がコレクションで、Setを配列に変換するのが難しい場合、または配列のJSONパターンを使用してStringに変換する場合( '[item.toString、item.toString()']) –
I JSONにはSetの概念がないため、これをJSONに変換するとSetセマンティクスが失われるためです。もちろん、コレクションをJSONにストリング化することは簡単ですが、これはJSONとDartの間の現在の1:1マッピングを破ります。私は、stringart()のSet/Collectionサポートは、Dartが若すぎるためにまだ欠けているものだと思っています - もし問題があれば(http://code.google.com/p/dart/issues/)あなたはこれをスピードアップしたい:) –