人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

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>


●質問者: P-mako
●カテゴリ:インターネット ウェブ制作
✍キーワード:HTML JavaScript JSON XML コード
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● kilrey
●27ポイント

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

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

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

◎質問者からの返答

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

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


2 ● にゃるら
●27ポイント

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

を使って、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オブジェクト、みたいにブラウザの独自拡張を使う必要が出てくるかもしれません。

◎質問者からの返答

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

> * XML.ObjTree

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

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

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

> * JSON in JavaScript

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

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

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

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

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


3 ● にゃるら
●26ポイント

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

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

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

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

です。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ