JDBな人生  専門的なことから日常的なことまで~ まぁ自由きままに書いていきます。
2017年07月 / 06月<< 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 >>08月

アクセスランキング

[ジャンルランキング]
コンピュータ
450位
アクセスランキングを見る>>

[サブジャンルランキング]
プログラミング
66位
アクセスランキングを見る>>

xSVをテーブルにする

近頃は(というほど近くもないですが)、JavaScriptのArrayも色々と拡張されて、forEach()やらmap()やらが使えるようになっています。例えばTSVをTableにするようなスクリプトもこんな感じですっきりと書けます。

var tsv2Table = function(tsv, table) {
  tsv
    .split(/\r\n|\r|\n/)
    .map(
      function(row) {
        return row.split('\t');
      })
    .forEach(function(cols) {
      var tr = table.appendChild(
        document.createElement('tr')
      );
      cols.forEach(function(col) {
        tr.appendChild(
          document.createElement('td')
        ).appendChild(
          document.createTextNode(col)
        );
      });
    });
}

少し変えればCSVや他のxSVにも対応できます。
といっても、もはやこの程度ならググって持ってくるよりも自分で書いたほうがはやいかもしれません。

forEachもmapも一部の古いブラウザでは対応していませんが、CSSや他のAPIの対応状況を考えればどのみち切り捨てざるを得ないので、そんなに気にしなくて良い感じもします。それでももし使いたければ、MDNに互換のコードがあるのでそれをコピペすれば大丈夫です。

Array.prototype.forEach() - JavaScript | MDN
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach

#こういうコードってこうやって載せるよりGitHubとかにあげたほうがいいのかな…
 


 
   JavaScript    TB(0)    CM(0)    EDIT    ページ↑

コメント投稿


 管理者だけに表示

コメント

トラックバック

この記事へのトラックバック:

プロフィール

JDB Luigi

Author:JDB Luigi
どこにでもいるようなありふれた人間・・・という訳でもなく、かと言って怪しい宗教を信仰する変人という訳でも無い。

基本的に掲載しているコード等は煮ていただいても焼いていただいても結構ですが、利用は自己責任にてお願いいします。
また、バグ・アドバイス等もしあればよろしくお願いします。