جستجو برای:
  • خانه
  • دوره و کتاب
  • مقالات
    • خانواده جاوا اسکریپت
      • مقالات جاوا اسکریپت
      • مقالات ری اکت و نکست
      • هوش مصنوعی
    • خانواده فرانت
      • مقالات سی اس اس
      • مقالات اچ تی ام ال
    • محیط کار
      • سوالات استخدامی جاوا اسکریپت
      • سوالات استخدامی ری اکت
      • اصطلاحات محیط کار فرانت اند
    • مجله پرنیان
      • تصاویر دوره ها
      • نظرات دانشجویان قدیم
  • سوالات متداول
  • تماس با ما
  • خانواده پرنیان
    • چت خانه
    • دستیار هوش مصنوعی(رایگان!)
    • تایید مدارک
    • پیام یا انتقاد (ناشناس)
    • تعیین سطح زبان انگلیسی
    • پخش لایو رادیوسام
 
  • 09921632445
  • radioarsam[at]gmail.com
  • فروشگاه محصولات
  • بلاگ
  • تماس با ما
  • درباره پارسا قربانیان، موسس مدرسه پرنیان
پارسا قربانیان |گروه آموزشی پرنیان | آموزش حرفه ای طراحی سایت
  • خانه
  • دوره و کتاب
  • مقالات
    • خانواده جاوا اسکریپت
      • مقالات جاوا اسکریپت
      • مقالات ری اکت و نکست
      • هوش مصنوعی
    • خانواده فرانت
      • مقالات سی اس اس
      • مقالات اچ تی ام ال
    • محیط کار
      • سوالات استخدامی جاوا اسکریپت
      • سوالات استخدامی ری اکت
      • اصطلاحات محیط کار فرانت اند
    • مجله پرنیان
      • تصاویر دوره ها
      • نظرات دانشجویان قدیم
  • سوالات متداول
  • تماس با ما
  • خانواده پرنیان
    • چت خانه
    • دستیار هوش مصنوعی(رایگان!)
    • تایید مدارک
    • پیام یا انتقاد (ناشناس)
    • تعیین سطح زبان انگلیسی
    • پخش لایو رادیوسام
0

ورود و ثبت نام

بلاگ پرنیان

پارسا قربانیان |گروه آموزشی پرنیان | آموزش حرفه ای طراحی سایتبلاگمقالاتمقالات جاوا اسکریپتتفاوت HTMLCollection و NodeList در جاوا اسکریپت

تفاوت HTMLCollection و NodeList در جاوا اسکریپت

2 تیر 1405
ارسال شده توسط مدیریت
بلاگ پرنیان ، دسته‌بندی نشده ، مقالات ، مقالات جاوا اسکریپت
140 بازدید
تفاوت HTMLCollection و NodeList در جاوا اسکریپت

اگر در جاوا اسکریپت با متدهایی مانند getElementsByClassName()، querySelectorAll() یا childNodes کار کرده باشید، احتمالاً با دو ساختار مهم به نام‌های HTMLCollection و NodeList مواجه شده‌اید. بسیاری از توسعه‌دهندگان تازه‌کار این دو را مشابه یکدیگر تصور می‌کنند، در حالی که تفاوت‌های مهمی میان آن‌ها وجود دارد.

در این مقاله به بررسی کامل تفاوت HTMLCollection و NodeList می‌پردازیم.

HTMLCollection چیست؟

HTMLCollection مجموعه‌ای زنده (Live Collection) از عناصر HTML است. این یعنی اگر ساختار DOM تغییر کند، محتوای این مجموعه نیز به صورت خودکار به‌روزرسانی می‌شود.

به عنوان مثال، متدهای زیر یک HTMLCollection برمی‌گردانند:

document.getElementsByClassName("item");
 document.getElementsByTagName("div");

آیا میدانید مدرسه پرنیان، کلاس آموزش طراحی سایت حرفه ای بصورت حضوری و مجازی برگزار میکند؟

NodeList چیست؟

NodeList مجموعه‌ای از نودهای DOM است. این نودها می‌توانند شامل عناصر HTML، متن‌ها، کامنت‌ها و سایر انواع نودها باشند.

متدهای زیر معمولاً NodeList برمی‌گردانند:

document.querySelectorAll(".item");
 document.childNodes;

تفاوت‌های اصلی HTMLCollection و NodeList

ویژگیHTMLCollectionNodeList
نوع دادهفقط عناصر HTMLهمه نودها
زنده (Live) بودنبلهمعمولاً خیر
متدهای تولیدکنندهgetElementsByClassName، getElementsByTagNamequerySelectorAll، childNodes
پشتیبانی از forEachخیربله
شامل Text Nodeخیربله

چه زمانی از HTMLCollection استفاده کنیم؟

اگر نیاز دارید مجموعه عناصر به‌صورت خودکار با تغییرات DOM به‌روزرسانی شود، HTMLCollection گزینه مناسبی است.

مثال:

  • شمارش لحظه‌ای عناصر
  • رابط‌های کاربری پویا

چه زمانی از NodeList استفاده کنیم؟

اگر قصد دارید روی مجموعه‌ای ثابت از عناصر عملیات انجام دهید و از امکاناتی مانند forEach() بهره ببرید، NodeList انتخاب بهتری است.

امروزه در اکثر پروژه‌های مدرن، توسعه‌دهندگان بیشتر از:

document.querySelectorAll()

استفاده می‌کنند.

اگرچه HTMLCollection و NodeList هر دو مجموعه‌ای از عناصر DOM را نگهداری می‌کنند، اما رفتار آن‌ها کاملاً یکسان نیست. HTMLCollection یک مجموعه زنده از عناصر HTML است، در حالی که NodeList می‌تواند شامل انواع مختلف نودها باشد و در بسیاری از موارد به‌صورت ایستا عمل می‌کند.

شناخت این تفاوت‌ها باعث می‌شود کدهای بهینه‌تر، سریع‌تر و قابل‌نگهداری‌تری در پروژه‌های جاوا اسکریپت بنویسید.

اشتراک گذاری:
درباره مدیریت

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

نوشته های بیشتر از مدیریت
در تلگرام
کانال ما را دنبال کنید!
در اینستاگرام
ما را دنبال کنید!
در یوتوب
ما را دنبال کنید!
Created by potrace 1.14, written by Peter Selinger 2001-2017
در آپارات
ما را دنبال کنید!

مطالب زیر را حتما مطالعه کنید

خرید هاست و دامین
خرید هاست و دامین با تخفیف ویژه پرنیان
دوره جامع هوش مصنوعی عمومی، از تاریخچه تا ساخت AGENT
دوره جامع هوش مصنوعی عمومی، از تاریخچه تا ساخت AGENT
دوره باباک مدرسه پرنیان
پایان دوره بابک
Vibe Coding چیست؟ آیا آینده برنامه‌نویسی تغییر کرده است؟
Vibe Coding چیست؟ آیا آینده برنامه‌نویسی تغییر کرده است؟
MCP چیست
MCP چیست و چرا آینده برنامه‌نویسی با هوش مصنوعی را تغییر می‌دهد؟
State Normalization در فرانت‌اند چیست؟
State Normalization در فرانت‌اند چیست؟
قدیمی تر State Normalization در فرانت‌اند چیست؟
جدیدتر MCP چیست و چرا آینده برنامه‌نویسی با هوش مصنوعی را تغییر می‌دهد؟

دیدگاهتان را بنویسید لغو پاسخ

جستجو برای:
نوشته‌های تازه
  • خرید هاست و دامین با تخفیف ویژه پرنیان
  • دوره جامع هوش مصنوعی عمومی، از تاریخچه تا ساخت AGENT
  • پایان دوره بابک
  • Vibe Coding چیست؟ آیا آینده برنامه‌نویسی تغییر کرده است؟
  • MCP چیست و چرا آینده برنامه‌نویسی با هوش مصنوعی را تغییر می‌دهد؟
دسته‌ها
دوره ها:

کلاس های درحال ثبت نام فرانت اند: 

  • دوره فرانت اند صبح از اوایل آبان
  • دوره جامع هوش مصنوعی
  • دوره جاوا اسکریپت ری اکت Next

دوره فرانت اند خیام

 

مدرسه فرانت اند پرنیان

گروه آموزشی پرنیان از سال 92 تاسیس شده و تاکنون ده ها دوره طراحی وب ، CMS ، سئو و بوت کمپ فرانت اند به صورت حضوری و غیر حضوری برگزار کرده است. ما در پرنیان جدیدترین و کاربردی ترین مباحث طراحی و توسعه وب ، سئو و دیجیتال مارکتینگ رو آموزش داده و راه ورود شما عزیزان به بازار کار را هموار کرده ایم.

فهرست سفارشی
  • بلاگ
  • تماس با ما
  • حساب کاربری من
  • درباره پارسا قربانیان، موسس مدرسه پرنیان
  • سبد خرید
  • فروشگاه

مدرسه فرانت اند پرنیان

تمام حقوق برای مدرسه فرانت اند پرنیان محفوظ است. سیاست حفظ حریم شخصی

ورود

رمز عبور را فراموش کرده اید؟

هنوز عضو نشده اید؟ عضویت در سایت