JavaScriptのJSONデータ変換について。

http://q.hatena.ne.jp/1166599547
上記の質問の回答者2の方のソースで、h.toXMLString() には、次のようなXMLが得られます。これをJSONデータに変換するには、どういうコードを記述すれば良いでしょうか?
<0><element><0>C:</0><1>hoge</1><2>foo</2><3>aaa.html
</3></element></0><1><element><0>C:</0><1>hoge</1><2>foo</2><3>bbb.html
</3></element></1><2><element><0>C:</0><1>hoge</1><2>foo</2><3>bar</3><4>ccc.html
</4></element></2><3><element><0>C:</0><1>hoge</1><2>hogehoge</2><3>123.html
</3></element></3><4><element><0>C:</0><1>hoge</1><2>456.html
</2></element></4><5><element><0></0></element></5>

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2006/12/28 17:30:04
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答3件)

id:kilrey No.1

回答回数16ベストアンサー獲得回数0

ポイント27pt

JKL.ParseXMLを使うのは如何でしょうか。

http://www.kawa.net/works/js/jkl/parsexml.html

実際に実行しているのはJKL.ParseXML.prototype.parseDocument,parseElement辺りです。

id:P-mako

実は1度キャンセルした質問では記載していたのですが、そのサイトは既知です。

すべて見れていないのかも知れませんが、主にXMLファイルから読み込んでの変換なので、すでにオブジェクトまたは文字列(String)としてXMLを持っている状態での変換コードを具体的に知りたいという質問です。

2006/12/21 20:07:05
id:nyarla-net No.2

回答回数35ベストアンサー獲得回数2

ポイント27pt

前の回答者が提示されているライブラリと同じ作者のライブラリですが、

を使って、XMLをJavascriptのデータに変換し、

を使ってJSON文字列に変換するのはどうでしょうか。

変換したデータをJavascriptで使うのであればJSON in JavascriptによるJSON化は必要ないかもしれません。

ただ、XML.ObjTree自体、環境によっては動作しない場合もあります。

処理の流れとしては、

  1. XMLテキストをパースしてDOMを構築
  2. DOMTreeを辿ってJavascriptのデータに変換
  3. Javascriptのデータから、JSONテキストに変換

見たいな感じになるのではないでしょうか。

XMLテキストをパースするには、Firefox、Opera等ではDOMParserオブジェクト、Internet ExplorerではActiveXオブジェクト、みたいにブラウザの独自拡張を使う必要が出てくるかもしれません。

id:P-mako

ご回答ありがとうございます。

> * XML.ObjTree

> を使って、XMLをJavascriptのデータに変換し、

根本は、JavaScriptの連想配列→JSONが要件でした。

(JSONにするならまずXML変換するほうが相性が良いかという発想での質問でした)

> * JSON in JavaScript

> を使ってJSON文字列に変換するのはどうでしょうか。

これは、JavaScriptの連想配列をJSON変換できるという解釈で正しいでしょうか?

> 変換したデータをJavascriptで使うのであればJSON in JavascriptによるJSON化は必要ないかもしれません。

さらに先で実装したい方式がJSON形式なので、JavaScriptの連想配列をJSON変換したかったのです。

可能であれば再回答をよろしくお願いします。

2006/12/22 13:12:04
id:nyarla-net No.3

回答回数35ベストアンサー獲得回数2

ポイント26pt

これは、JavaScriptの連想配列をJSON変換できるという解釈で正しいでしょうか?

そういう事であってます。

が、これさっき見たら禁断のObject.prototype拡張してるみたいなので、使うときには十分注意する必要があります。まあ、Object.prototype.toJSONStringをObject.prototype使わないように改造すれ大丈夫だと思いますが。

ちなみにスクリプトのURIは

です。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません