کمک‌کننده‌های Iterator به Baseline تبدیل شده‌اند، به تازگی در دسترس هستند، کمک‌کننده‌های Iterator تبدیل به Baseline شده‌اند، به تازگی در دسترس هستند، کمک‌کننده‌های Iterator تبدیل به Baseline شده‌اند تازه در دسترس هستند، کمک‌کننده‌های Iterator تبدیل به Baseline شده‌اند تازه در دسترس هستند

جرمی واگنر
Jeremy Wagner

تاریخ انتشار: 1 می 2025

اگر جاوا اسکریپت می نویسید، تکرار کاری است که زیاد انجام می دهید. شما یا حلقه هایی برای کار با آرایه ها می نویسید، یا از روش های برنامه نویسی کاربردی مانند map ، filter و سایر روش های مشابه برای پردازش انواع داده ها استفاده می کنید.

با این حال، یک نکته مهم در استفاده از این روش ها این است که آنها فقط در آرایه ها در دسترس هستند. اگر می‌خواهید از آن‌ها در یک تکرار شونده استفاده کنید، باید آن را به یک آرایه تبدیل کنید و سپس روش مورد نیاز خود را فراخوانی کنید. این ممکن است بیهوده باشد، یا در مواردی که قابلیت تعامل شامل مجموعه داده های بی نهایت با استفاده از توابع مولد باشد، امکان پذیر نیست. با این حال، اکنون که کمک‌کننده‌های تکرارکننده به‌تازگی در دسترس قرار گرفته‌اند، این توانایی در نهایت در بین مرورگرها در دسترس است.

کمک کننده های تکرارکننده چ��ونه کار می کنند؟

کمک کننده های Iterator با تعریف روش های جدید بر روی prototype شی Iterator در معرض دید قرار می گیرند. این روش‌ها با بسیاری از روش‌های برنامه‌نویسی کاربردی که شما از آنها استفاده می‌کنید، مانند map ، filter ، reduce و سایر روش‌های مشابه، همسو هستند.

برای مثال، می‌توانید از یک کمک‌کننده تکرارکننده در روش filter استفاده کنید تا آیتم‌های فهرست را بر اساس محتویات ویژگی innerText آن‌ها برای مجموعه‌ای از گره‌های DOM فیلتر کنید، که بعداً می‌توانید در یک حلقه for استفاده کنید:

const posts = document.querySelectorAll("ul#specific-list > li")
  .values()
  .filter(item => item.textContent.includes("kiwi"));

// For-of loops can only be used on iterables, which `posts` is!
for (const post of posts) {
  console.log(post.textContent);
}

در قطعه کد قبلی، از روش کمکی تکرارکننده برای filter برای تکرار روی تمام عناصر <li> در یک عنصر <ul> خاص استفاده می‌شود. معیار فیلتر این است که محتوای متنی هر عنصر باید دارای زیررشته ای از "kiwi" باشد.

کمک کننده های Iterator همچنین می توانند با توابع ژنراتور استفاده شوند. در این مثال، یک تابع مولد که فاکتوریل ها را محاسبه می کند، اما از کمک کننده تکرار کننده برای فیلتر کردن مقادیری که بر 8 قابل تقسیم هستند استفاده می کند و پنج مقدار فیلتر شده اول را در کنسول ثبت می کند:

function* factorials (n) {
  let result = 1;

  for (let i = 1; i <= n; i++) {
    result *= i;

    yield result;
  }
}

const filteredFactorials = factorials(128).filter(x => x % 8 === 0);

console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);

به طور خاص، قطعه کد قبلی نمونه‌ای از چیزی است که با کمک‌کننده‌های تکرارکننده امکان‌پذیر نیست، زیرا تعداد فاکتوریل‌ها بی‌نهایت است و چیزی نیست که در غیر این صورت بتوانید به آرایه تبدیل کنید!

بسته به موقعیت شما، کمک‌کننده‌های تکرارکننده پتانسیل زیادی دارند—و برای هر یک از این روش‌های تکرارپذیر در دسترس هستند:

امکانات برای موارد استفاده کمکی تکرار کننده بسیار زیاد است و می تواند تقویت قابل توجهی در ارگونومی توسعه دهندگان ایجاد کند. اکنون که آنها به تازگی در دسترس هستند، باید به مرور زمان اطمینان بیشتری داشته باشید که می توانید بدون ترس از مشکلات سازگاری از آنها استفاده کنید. برای اطلاعات بیشتر، منابع زیر را بررسی کنید:

،

جرمی واگنر
Jeremy Wagner

تاریخ انتشار: 1 می 2025

اگر جاوا اسکریپت می نویسید، تکرار کاری است که زیاد انجام می دهید. شما یا حلقه هایی برای کار با آرایه ها می نویسید، یا از روش های برنامه نویسی کاربردی مانند map ، filter و سایر روش های مشابه برای پردازش انواع داده ها استفاده می کنید.

با این حال، یک نکته مهم در استفاده از این روش ها این است که آنها فقط در آرایه ها در دسترس هستند. اگر می‌خواهید از آن‌ها در یک تکرار شونده استفاده کنید، باید آن را به یک آرایه تبدیل کنید و سپس روش مورد نیاز خود را فراخوانی کنید. این ممکن است بیهوده باشد، یا در مواردی که قابلیت تعامل شامل مجموعه داده های بی نهایت با استفاده از توابع مولد باشد، امکان پذیر نیست. با این حال، اکنون که کمک‌کننده‌های تکرارکننده به‌تازگی در دسترس قرار گرفته‌اند، این توانایی در نهایت در بین مرورگرها در دسترس است.

کمک کننده های تکرارکننده چگونه کار می کنند؟

کمک کننده های Iterator با تعریف روش های جدید بر روی prototype شی Iterator در معرض دید قرار می گیرند. این روش‌ها با بسیاری از روش‌های برنامه‌نویسی کاربردی که شما از آنها استفاده می‌کنید، مانند map ، filter ، reduce و سایر روش‌های مشابه، همسو هستند.

برای مثال، می‌توانید از یک کمک‌کننده تکرارکننده در روش filter استفاده کنید تا آیتم‌های فهرست را بر اساس محتویات ویژگی innerText آن‌ها برای مجموعه‌ای از گره‌های DOM فیلتر کنید، که بعداً می‌توانید در یک حلقه for استفاده کنید:

const posts = document.querySelectorAll("ul#specific-list > li")
  .values()
  .filter(item => item.textContent.includes("kiwi"));

// For-of loops can only be used on iterables, which `posts` is!
for (const post of posts) {
  console.log(post.textContent);
}

در قطعه کد قبلی، از روش کمکی تکرارکننده برای filter برای تکرار روی تمام عناصر <li> در یک عنصر <ul> خاص استفاده می‌شود. معیار فیلتر این است که محتوای متنی هر عنصر باید دارای زیررشته ای از "kiwi" باشد.

کمک کننده های Iterator همچنین می توانند با توابع ژنراتور استفاده شوند. در این مثال، یک تابع مولد که فاکتوریل ها را محاسبه می کند، اما از کمک کننده تکرار کننده برای فیلتر کردن مقادیری که بر 8 قابل تقسیم هستند استفاده می کند و پنج مقدار فیلتر شده اول را در کنسول ثبت می کند:

function* factorials (n) {
  let result = 1;

  for (let i = 1; i <= n; i++) {
    result *= i;

    yield result;
  }
}

const filteredFactorials = factorials(128).filter(x => x % 8 === 0);

console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);

به طور خاص، قطعه کد قبلی نمونه‌ای از چیزی است که با کمک‌کننده‌های تکرارکننده امکان‌پذیر نیست، زیرا تعداد فاکتوریل‌ها بی‌نهایت است و چیزی نیست که در غیر این صورت بتوانید به آرایه تبدیل کنید!

بسته به موقعیت شما، کمک‌کننده‌های تکرارکننده پتانسیل زیادی دارند—و برای هر یک از این روش‌های تکرارپذیر در دسترس هستند:

امکانات برای موارد استفاده کمکی تکرار کننده بسیار زیاد است و می تواند تقویت قابل توجهی در ارگونومی توسعه دهندگان ایجاد کند. اکنون که آنها به تازگی در دسترس هستند، باید به مرور زمان اطمینان بیشتری داشته باشید که می توانید بدون ترس از مشکلات سازگاری از آنها استفاده کنید. برای اطلاعات بیشتر، منابع زیر را بررسی کنید:

،

جرمی واگنر
Jeremy Wagner

تاریخ انتشار: 1 می 2025

اگر جاوا اسکریپت می نویسید، تکرار کاری است که زیاد انجام می دهید. شما یا حلقه هایی برای کار با آرایه ها می نویسید، یا از روش های برنامه نویسی کاربردی مانند map ، filter و سایر روش های مشابه برای پردازش انواع داده ها استفاده می کنید.

با این حال، یک نکته مهم در استفاده از این روش ها این است که آنها فقط در آرایه ها در دسترس هستند. اگر می‌خواهید از آن‌ها در یک تکرار شونده استفاده کنید، باید آن را به یک آرایه تبدیل کنید و سپس روش مورد نیاز خود را فراخوانی کنید. این ممکن است بیهوده باشد، یا در مواردی که قابلیت تعامل شامل مجموعه داده های بی نهایت با استفاده از توابع مولد باشد، امکان پذیر نیست. با این حال، اکنون که کمک‌کننده‌های تکرارکننده به‌تازگی در دسترس قرار گرفته‌اند، این توانایی در نهایت در بین مرورگرها در دسترس است.

کمک کننده های تکرارکننده چگونه کار می کنند؟

کمک کننده های Iterator با تعریف روش های جدید بر روی prototype شی Iterator در معرض دید قرار می گیرند. این روش‌ها با بسیاری از روش‌های برنامه‌نویسی کاربردی که شما از آنها استفاده می‌کنید، مانند map ، filter ، reduce و سایر روش‌های مشابه، همسو هستند.

برای مثال، می‌توانید از یک کمک‌کننده تکرارکننده در روش filter استفاده کنید تا آیتم‌های فهرست را بر اساس محتویات ویژگی innerText آن‌ها برای مجموعه‌ای از گره‌های DOM فیلتر کنید، که بعداً می‌توانید در یک حلقه for استفاده کنید:

const posts = document.querySelectorAll("ul#specific-list > li")
  .values()
  .filter(item => item.textContent.includes("kiwi"));

// For-of loops can only be used on iterables, which `posts` is!
for (const post of posts) {
  console.log(post.textContent);
}

در قطعه کد قبلی، از روش کمکی تکرارکننده برای filter برای تکرار روی تمام عناصر <li> در یک عنصر <ul> خاص استفاده می‌شود. معیار فیلتر این است که محتوای متنی ��ر ��نصر باید ��ا��ای ��یررشته ای از "kiwi" باشد.

کمک کننده های Iterator همچنین می توانند با توابع ژنراتور استفاده شوند. در این مثال، یک تابع مولد که فاکتوریل ها را محاسبه می کند، اما از کمک کننده تکرار کننده برای فیلتر کردن مقادیری که بر 8 قابل تقسیم هستند استفاده می کند و پنج مقدار فیلتر شده اول را در کنسول ثبت می کند:

function* factorials (n) {
  let result = 1;

  for (let i = 1; i <= n; i++) {
    result *= i;

    yield result;
  }
}

const filteredFactorials = factorials(128).filter(x => x % 8 === 0);

console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);

به طور خاص، قطعه کد قبلی نمونه‌ای از چیزی است که با کمک‌کننده‌های تکرارکننده امکان‌پذیر نیست، زیرا تعداد فاکتوریل‌ها بی‌نهایت است و چیزی نیست که در غیر این صورت بتوانید به آرایه تبدیل کنید!

بسته به موقعیت شما، کمک‌کننده‌های تکرارکننده پتانسیل زیادی دارند—و برای هر یک از این روش‌های تکرارپذیر در دسترس هستند:

امکانات برای موارد استفاده کمکی تکرار کننده بسیار زیاد است و می تواند تقویت قابل توجهی در ارگونومی توسعه دهندگان ایجاد کند. اکنون که آنها به تازگی در دسترس هستند، باید به مرور زمان اطمینان بیشتری داشته باشید که می توانید بدون ترس از مشکلات سازگاری از آنها استفاده کنید. برای اطلاعات بیشتر، منابع زیر را بررسی کنید:

،

جرمی واگنر
Jeremy Wagner

تاریخ انتشار: 1 می 2025

اگر جاوا اسکریپت می نویسید، تکرار کاری است که زیاد انجام می دهید. شما یا ح��قه هایی برای کار با آرایه ها می نویسید، یا از روش های برنامه نویسی کاربردی مانند map ، filter و سایر روش های مشابه برای پردازش انواع داده ها استفاده می کنید.

با این حال، یک نکته مهم در استفاده از این روش ها این است که آنها فقط در آرایه ها در دسترس هستند. اگر می‌خواهید از آن‌ها در یک تکرار شونده استفاده کنید، باید آن را به یک آرایه تبدیل کنید و سپس روش مورد نیاز خود را فراخوانی کنید. این ممکن است بیهوده باشد، یا در مواردی که قابلیت تعامل شامل مجموعه داده های بی نهایت با استفاده از توابع مولد باشد، امکان پذیر نیست. با این حال، اکنون که کمک‌کننده‌های تکرارکننده به‌تازگی در دسترس قرار گرفته‌اند، این توانایی در نهایت در بین مرورگرها در دسترس است.

کمک کننده های تکرارکننده چگونه کار می کنند؟

کمک کننده های Iterator با تعریف روش های جدید بر روی prototype شی Iterator در معرض دید قرار می گیرند. این روش‌ها با بسیاری از روش‌های برنامه‌نویسی کاربردی که شما از آنها استفاده می‌کنید، مانند map ، filter ، reduce و سایر روش‌های مشابه، همسو هستند.

برای مثال، می‌توانید از یک کمک‌کننده تکرارکننده در روش filter استفاده کنید تا آیتم‌های فهرست را بر اساس محتویات ویژگی innerText آن‌ها برای مجموعه‌ای از گره‌های DOM فیلتر کنید، که بعداً می‌توانید در یک حلقه for استفاده کنید:

const posts = document.querySelectorAll("ul#specific-list > li")
  .values()
  .filter(item => item.textContent.includes("kiwi"));

// For-of loops can only be used on iterables, which `posts` is!
for (const post of posts) {
  console.log(post.textContent);
}

در قطعه کد قبلی، از روش کمکی تکرارکننده برای filter برای تکرار روی تمام عناصر <li> در یک عنصر <ul> خاص استفاده می‌شود. معیار فیلتر این است که محتوای متنی هر عنصر باید دارای زیررشته ای از "kiwi" باشد.

کمک کننده های Iterator همچنین می توانند با توابع ژنراتور استفاده شوند. در این مثال، یک تابع مولد که فاکتوریل ها را محاسبه می کند، اما از کمک کننده تکرار کننده برای فیلتر کردن مقادیری که بر 8 قابل تقسیم هستند استفاده می کند و پنج مقدار فیلتر شده اول را در کنسول ثبت می کند:

function* factorials (n) {
  let result = 1;

  for (let i = 1; i <= n; i++) {
    result *= i;

    yield result;
  }
}

const filteredFactorials = factorials(128).filter(x => x % 8 === 0);

console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);
console.log(filteredFactorials.next().value);

به طور خاص، قطعه کد قبلی نمونه‌ای از چیزی است که با کمک‌کننده‌های تکرارکننده امکان‌پذیر نیست، زیرا تعداد فاکتوریل‌ها بی‌نهایت است و چیزی نیست که در غیر این صورت بتوانید به آرایه تبدیل کنید!

بسته به موقعیت شما، کمک‌کننده‌های تکرارکننده پتانسیل زیادی دارند��و برای هر یک از این روش‌های تکرارپذیر در دسترس هستند:

امکانات برای موارد استفاده کمکی تکرار کننده بسیار زیاد است و می تواند تقویت قابل توجهی در ارگونومی توسعه دهندگان ایجاد کند. اکنون که آنها به تازگی در دسترس هستند، باید به مرور زمان اطمینان بیشتری داشته باشید که می توانید بدون ترس از مشکلات سازگاری از آنها استفاده کنید. برای اطلاعات بیشتر، منابع زیر را بررسی کنید: