jqueryでdomを配列で受け取るためのメモ
2017/12/13
気分が向いたらまとめるけど・・・ひとまずメモっておく。
jqueryでDOMの操作といえば下記のような感じ。
var obj_a = $(‘body’).find(‘a’);
このときは、受け取れるのはオブジェクトになってしまう。基本、問題はない。
ループさせるならeach()で下記のようにすればいいし。
$(‘body’).find(‘a’).each(function(){
~処理~
});
~処理~
});
取得した結果から直接インデックスを指定することもできるし。
var obj_a = $(‘body’).find(‘a’);
var fst_a = obj_a[0];
var fst_a = obj_a[0];
取得する値が決まっている場合(.map().get())
text()を取得する場合。
「.map()」を使えばいいらしい。詳しくは未調査。
取得した結果がオブジェクトだから「.get()」で配列変換する。
var ary_a = $(‘body’).find(‘a’).map(function(){ return $(this).text() }).get();
配列じゃなくてCSVで受け取る(.map().get().join())
上で受け取った配列を「.join()」すればOK。
最初からCSVで欲しいなら下記のような感じ。
var ary_a = $(‘body’).find(‘a’).map(function(){ return $(this).text() }).get().join;