前提・実現したいこと
要素を回して、条件に一致したものをコールバックして、bodyにappendさせたいのですが、
ログを取るとundefinedに変わってしまいます。
試したこと
jQuery
1$(function() { 2 var samplediv1 = $("<div><p>サンプル123</p></div>"); 3 samplediv1.name = "test123"; 4 var samplediv2 = $("<div><p>サンプル456</p></div>"); 5 samplediv2.name = "test456"; 6 7 var divarr = new Array(); 8 divarr.push(samplediv1); 9 divarr.push(samplediv2); 10 11 12 var mydiv = divarr.forEach(function(value){ 13 if(value.name.indexOf("123") != -1){ 14 console.log(value); 15 return value; 16 } 17 }); 18 19 console.log(mydiv); 20 $("body").append(mydiv); 21}); 22
・ログの内容。
m.fn.init [div, name: "test123"] undefined
forEach内でのconsole.log(value)のログは、m.fn.init [div, name: "test123"] のようにdivを持っているのに、
console.log(mydiv) でのログは、
undefinedになってしまい、当然これを$("body").append(mydiv)しても、何もbodyに表示されません。
やりたいこととしては、divarrを回して、123の値を含むnameを持つdivをappendしたいということです。
ご教示お願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/03/22 13:23