راکت

معنی کد

5 پاسخ

سلام. یه سوال دارم. سوالم درمورد کد زیره:

  for (i = 0; i < tr.length; i++) {
    td = tr[i].getElementsByTagName("td")[0];
    if (td) { 
      /* Some text */
    }

میخواستم بدونم معنی این if چیه:

if (td)
ثبت پرسش جدید

پاسخ‌ها

5
سبحان دادخواه
سبحان دادخواه
@SobhanDadkhah

تخصص: دانشجوی برنامه نویسی :)

سلام . @amirs3276har
چک میکنه اگر td وجود داشت وارد شرط میشه .
در واقع اگر متغیر td شما مقداری داشته باشه

  if(td) 
// true - vorood be block if

اگر td خالی باشه

  if(td)
 // false - vared nashodan be block if va edame code pas az if

مورد کاملترش :
در صورت برقراری یکی از حالات زیر برای متغیرتون if شما اجرا نمیشه .
توضیح تصویر رو وارد کنید
سعی کردم واضح باشه . موفق باشید

صدرا حکیم
صدرا حکیم
@sadrahkm

تخصص: توسعه دهنده لاراول

متد getElementsByTagName اگر چیزی رو پیدا کرد، یه کالکشن برمیگردونه. اینجا یکی از خونه های اون کالکشن گرفته شده و توی شرط بررسی شده که اگه چیزی رو پیدا کرد و خونه 0 ام خالی نبود، داخل شرط اجرا بشه

شاید پاسخ شما همین‌جا باشد

میلاد-م
میلاد-م
@milad

تخصص: توسعه‌دهنده رابط کاربری - Front-End

داره سطر به سطر یک جدول رو بررسی می کنه، داخل هر سطر که میرسه، اولین عنصر td از اون سطر رو بررسی میکنه.
(بخش if) اگر وجود داشت و مقدارش null نبود کد مورد نظر اجرا میشه.

حالا شاید به نظر برسه که این if چه معنی ای میده، هر سطری یک td داره دیگه، مگه سطری هستش که td داخلش نباشه؟
جوابش اینه که: بله ممکنه سطری باشه که td نداشته باشه. بدین صورت که، اگر جدول در سطر اولش که ستون های اصلی رو شامل میشه th داشته باشه، دیگه td نداره و برای سطر اول شرط if غلط میشه و کد موردنظر اجرا نمیشه.

Mesusjk
Mesusjk
@Mesusjk

تخصص: برنامه نویس جنگو و پایتون

@SobhanDadkhah @milad @sadrahkm خیلی ازتون ممنونم

میلاد-م
میلاد-م
@milad

تخصص: توسعه‌دهنده رابط کاربری - Front-End

سلامت باشی عزیزجان،
همون گزینه تشکر رو بزنید، تشکر میشه :)

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام