- ベストアンサー
外部ファイル読み込みと繰り返し処理について
質問いたします。 javascriptのみでCSVなどの外部テキストから、 下記のように配列内に読み込むことは可能なのでしょうか? objabc[0].objdef["この部分を外部テキストから読み込みたい"] = "OK!"; また、改行やカンマ、タブなどでの区切りの回数分 処理を繰り返す方法を教えていただければと思います。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
以前、簡単なものを作成したことがあります。 外部データを読み込むのには、ajaxを利用して読み込むのがよいでしょう。 (方法については、検索すればたくさんヒットするはずです。) テキスト文字列として取得できますので、原理的には、改行で1行ずつに分解し、さらにはカンマで同様に処理すればよろしいかと。 split()関数を利用すれば、そのまま配列になります。 データにカンマが含まれていたりする場合は、もう少し工夫が必要になります。 https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/String/split?redirectlocale=ja&redirectslug=JavaScript%2FReference%2FGlobal_Objects%2FString%2Fsplit CSVは利用頻度の高い形式なので、似たようなライブラリが作成されています。 それらも参考になることでしょう。 (これも、検索すればたくさんヒットします。以下は一例) http://allabout.co.jp/gm/gc/24176/ http://blog.cles.jp/item/2691 http://www.openspc2.org/reibun/JavaScript_technique/sample/11_etc/002/index.html >また、改行やカンマ、タブなどでの区切りの回数分処理を繰り返す方法 ご質問の意味がわかりかねます。 配列を処理するのなら普通にfor文やwhile文で繰返しすればよいと思いますが?? 配列になる前のものという意味なら、前述のsplitとかregExpあるいは上に書いたwhileなどでも処理が可能では??
お礼
丁寧にご回答いただき、誠にありがとうございました! >ご質問の意味がわかりかねます。 申し訳ございません。 確かにかなりの言葉足らずでした。 配列を処理する際の速度についての質問でした。 仰るとおり、配列にする前の処理させるべきかその後か、 そしてその時の命令文としてはどの文が適切か、 などを経験者にお聞きしたいと思っておりました。