PDA

View Full Version : یک برنامهء کوچک برای بررسی اشیاء و امکانات جاوااسکریپت



eshpilen
شنبه 25 آبان 1392, 11:01 صبح
این برنامه رو یکی دو روز تعطیلی بیکار بودم درست کردم.
گفتم شاید به درد کسی بخوره و براتون جالب باشه.
البته فقط کسانی که جاوااسکریپت بلد باشن این براشون جالبه.
میشه باهاش یکسری آبجکت های JS و پراپرتی و متدهاشون رو دید.
مثلا میتونید امکانات جاوااسکریپت مرورگرهای مختلف رو کمی بررسی کنید باهاش.
البته این برنامه همهء اشیاء و امکانات موجود JS رو بصورت خودکار نشون نمیده لزوما (مثلا XMLHttpRequest رو برای بررسی باید خودتون ایجاد کنید با کادر مخصوص این کار که توی برنامه هست). بسته به مرورگر هست و ساختارش که چه مواردی تا چه حد نشون داده بشن. منم دیگه وقت و اولویتی نداشتم روی علت این قضیه و کاملتر کردن برنامه تحقیق و کار کنم.

خب در این برنامه میتونید اشیاء و خصوصیات اونا در جاوااسکریپت رو از شیء window که بالاترین شیء و ریشه در سلسله مراتب DOM هست تاجاییکه یادمه، مرور کنید.
اما یوقت هم هست میخواید خصوصیات یک تگ HTML خاص رو چک کنید. مثلا ببینید تگ img چه خصوصیاتی داره. اونوقت کافیه در کادر Create element اسم تگ رو وارد کنید (در این مورد اسم تگ img است) و دکمهء Create رو بزنید. با این کار یک نمونه از عنصر img در برنامه تولید شده و بعنوان ریشهء سلسله مراتب set میشه.
اما بعضی چیزها تگ و عناصر HTML عادی نیستن. مثلا XMLHttpRequest. برای ایجاد این اشیاء، باید عبارت جاوااسکریپت مربوطه رو که یک نمونه از اون شیء ایجاد میکنه یا برگشت میده در کادر From eval درج کرده و دکمهء Eval رو بزنید. مثلا عبارت new XMLHttpRequest()‎ رو وارد کنید.
دقت کنید ممکنه چیزی به اسم XMLHttpRequest در بعضی مرورگرها بعنوان فرزند window نمایش داده بشه (مثلا در کروم)، ولی وقتی یک نمونه از XMLHttpRequest ایجاد میکنید هست که تمام پراپرتی و متدهای اون رو نشون میده. یعنی حواستون باشه اگر چیزی رو خواستید بررسی کنید یک نمونه ازش هم ایجاد کنید.
راستی با کادر Filter هم میتونید موارد نمایش داده شده رو به مواردی که درشون عبارت خاصی وجود داره محدود کنید. مثلا اگر عبارت mouse رو درش وارد کنید، تنها پراپرتی ها یا متدهایی که درشون عبارت mouse وجود داره نمایش داده میشن.

راستی این برنامه رو با مرورگرهای FF20، chrome17 و IE8 تست کردم.
البته روی IE (این مرورگر آزاردهندهء برنامه نویسان!) هنوزم خیلی خوب کار نمیکنه و بعضی وقتا خطاهای جاوااسکریپت هم میده.

اینم اسکرین شاتی از محیط برنامه:

112857
http://barnamenevis.org/images/misc/pencil.png