جومری-جی پیمایش - متد map()
مثال
لیست تمامی مقادیر فرم را ایجاد کنید:
$("پ").آپیند($("آپت"));.مپ(function(){}); return $(this).val(); ).get().join(", ") );
تعریف و استفاده
map() هر عنصر را از طریق یک فنکشن به مجموعه فعلی میگذارد و یک جعبه جدید از jQuery شامل بازگشتها ایجاد میکند.
جملات
.map(callback(index,domElement))
پارامترها | شرح |
---|---|
callback(index,domElement) | فنکشنای که برای هر عنصر در مجموعه فعلی فراخوانی میشود. |
شرح دقیق
به دلیل اینکه بازگشتی که به عنوان آرایه بسته شده توسط jQuery بازگردانده میشود، از get() برای پردازش بازگشتی که به دست آمده استفاده میکنیم تا آرایه پایه را به دست آوریم.
.map() روش برای دریافت یا تنظیم مقادیر مجموعه عنصر بسیار مفید است. به این فکر کنید که یک فرم با مجموعهای از چک باکسها داریم:
<form method="post" action=""> <fieldset> <div> <label for="two">2</label> <input type="checkbox" value="2" id="two" name="number[]"> </div> <div> <label for="four">4</label> <input type="checkbox" value="4" id="four" name="number[]"> </div> <div> <label for="six">6</label> <input type="checkbox" value="6" id="six" name="number[]"> </div> <div> <label for="eight">8</label> <input type="checkbox" value="8" id="eight" name="number[]"> </div> </fieldset> </form>
ما میتوانیم لیست جداگانه از شناسههای چک باکس را به دست آوریم:
$(':checkbox').map(function() { return this.id; ).get().join(',');
نتیجه این فراخوانی یک رشته است: "two,four,six,eight".
در داخل فنکشن callback، این به هر بار از تکرار کنونی عنصر DOM اشاره دارد. این فنکشن میتواند یک داده جداگانه را بازگرداند، یا یک آرایه از دادههایی که قرار است به مجموعه نتیجه اضافه شوند. اگر بازگشتی به عنوان آرایه بازگردانده شود، عناصر آرایه به مجموعه اضافه خواهند شد. اگر فنکشن null یا undefined را بازگرداند، هیچ عنصری اضافه نخواهد شد.