یکی از اشتباهات رایج در مقوله برنامه نویسی یکسان دانستن جاوا و جاوااسکریپت است. هر دو زبان برنامه نویسی هستند ولی می توان گفت تنها شباهت میان این دو اشتراک کلمه “جاوا” در نام هر دو است. در این سری مقاله ها، سعی بر این است که به معرفی جاوا و جاوااسکریپت پرداخته و تفاوت های میان این دو را بررسی کنیم.
جاوااسکریپت یک زبان اسکریپت سمت کاربر (Client-side) است که شیگرا (Object-Oriented Programming یا OOP) بوده، ساختاری مشابه زبان جاوا و ++C دارد و از محبوبیت بالایی برخوردار است. این بدین معناست که کد جاوااسکریپت در صفحه HTML نوشته می شود. زمانی که کاربری درخواست یک صفحه HTML با جاوااسکریپت دارد، اسکریپت به مرورگر ارسال می شود و بعد مرورگر عملیاتی روی آن انجام می دهد.
این حقیقت که اسکریپت در صفحه HTML قرار دارد بدین معناست که اسکریپت ها می توانند توسط هر کسی که از سایت بازدید می کند، دیده شده و کپی شوند. این مطلب می تواند بعنوان مزیتی برای جاوااسکریپت محسوب شود چرا که بدین وسیله کاربران قادرند تا هر جاوااسکریپتی که در دنیای شبکه می بینند مشاهده کرده و مطالعه نمایند. علاوه بر مرورگرها، جاوااسکریپت می تواند در سایر محتواها نیز مورد استفاده قرار بگیرد.
زبان جاوااسکریپت به این دلیل اسکریپت نامیده می شود که با مرورگر کار می کند. بعنوان مثال، چنانچه خواهان جابه جایی یک عکس هستید، جاوااسکریپت این دستور را به مرورگر می دهد. برای این کار فقط لازم است برای چند خط کد دستوری نوشت. به همین دلیل است که گفته می شود جاوااسکریپت یکی از زبان های برنامه نویسی آسان است. اما باید در نظر داشت که با همین زبان ساده اما جامع می توان برنامه های بسیار پیچیده را نوشت. یک نکته جالب توجه این است که تمامی مرورگرهای مدرن و نوظهور از این زبان برنامه نویسی حمایت می کنند.
جاوااسکریپت علاوه براینکه مزایای قابل قبولی دارد مشکلاتی نیز بهمراه دارد.
زمانی که یک کاربر صفحه جاوااسکریپت دریافت می کند تفسیر کننده جاوااسکریپت در مرورگر تلاش می کند تا اسکریپت مربوطه را اجرا نماید. حال، مشکل عمده این است که مرورگرهای متعدد هرکدام تفسیر کننده های منحصربفرد خود را دارند و برخی اوقات نمی توانند بخشی از جاوا اسکریپت را پیاده سازی نمایند. در این شرایط مغایرت های مرورگر دیده می شود. علاوه براین، هر نسخه جدید مرورگر بیشتر قابلیت فهم جاوا اسکریپت را دارد و درنتیجه بیشتر و بیشتر این امکان را فراهم می کند تا قسمت هایی از صفحه HTML را با اسکریپت تغییر دهد. این مطلب نیز نمونه دیگری از مغایرت های مرورگر است.
برای حل این مشکلات باید مورد به مورد پیش رفته و اقدام به مرتفع نمودن مغایرت ها کرد.
۱.۰: Netscape 2
۱.۱: Netscape 3 و Explorer 3 (نسخه اکسپلورر پشتیبانی خوبی از جاوااسکریپت ندارد).
۱.۲: نسخه اولیه شماره ۴ مرورگرها
۱.۳: نسخه پایانی شماره ۴ و نسخه ۵ مرورگرها
۱.۴: این نسخه برای مرورگرها قابل استفاده نیست و تنها برای سرورهای Netscape بکار می رود.
۱.۵: نسخه فعلی
۲.۰: نسخه آتی که درحال حاضر در دستان برندن ایچ و سایر همکارانش در حال توسعه است.
منبع: www.quirksmode.org