جاوا اسکریپت چیست؟

جاوا اسکریپت زبان برنامه نویسی می باشد که درون کدهای HTML قرار می گیرد و بر روی مرورگر بازدید کننده اجرا می شود. زبان جاوا اسکریپت توانایی تغییر در محتویات المانهای نمایش داده شده را بر روی مرورگر فرد بازدید کننده دارد بطوریکه امکان پویا سازی یا دینامیک شدن صفحات بوجود می آید.

زبان جاوا اسکریپت برای اولین بار توسط شرکت Netscape و با نام LiveScript به عنوان نرم افزاری مفید جهت استفاده در دنیای وب به بازار عرضه شد ولی بعدها با حمایت شرکت Sun Microsystems (پدید آورنده JAVA ) با نام جاوا اسکریپت شناخته شد.

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

اگرچه نت اسکیپ سازنده جاوا اسکریپت است اما در واقع  زبان جاوا اسکریپت به سیستم عامل یا PlatForm خاصی وابسته نیست و با اکثر مرورگر های پیشرفته از جمله Internet Explorer4 و نسخه های بعدی مایکروسافت کار می کند. البته مرورگر IE مستقیما جاوا اسکریپت را پشتیبانی نمی کند و دارای زبان اسکریپت نویسی مخصوص به خود “Jscript” است که اکثر وﻳﮋگی های جاوا اسکریپت را پشتیبانی می کند.

تاریخچه جاوا اسکریپت :

توسعه زبان جاوا اسکریپت در سال 1995 به دست گروه Netscape که مرورگر اینترنت Netscape را ساختند آغاز شد. این گروه به این فکر افتادند که خلق یک زبان برنامه نویسی برای بهبود تجربه کاربری از صفحه وب میتواند برای کاربران بسیار بهتر باشد. بنابراین آنها پیش “برندان آیک” (Brendan Eich)، فردی که کمپانی موزیلا و مرورگر اینترنت فایرفاکس را توسعه داد رفتند. از آنجایی که زبان جاوا در همان زمان هم بود و یک زبان جدید و محبوب برای برنامه نویسی وب محسوب میشد، آن ها خواستند که این زبان را شبیه به جاوا توسعه دهند.

امکانات و قابلیت های جاوا اسکریپت:
طراحان صفحات وب می توانند با استفاده از Function ها و Object های آماده و از پیش تعریف شده زبان جاوا اسکریپت قابلیت های زیادی را برای صفحات وب ایجاد کنند. برای مثال:
*قالب Html را طوری طراحی کنند که کاربران بتوانند خود اجزای صفحه وب مثل Background رنگ یا سایز لینک یا متن را داشته باشند.
*می توان با استفاده از کدهای گرافیکی انیمیشن ایجاد کرد و همچنین صفحاتی را طراحی کرد که کاربر به دلخواه قادر به جابجایی یا تغییر تصاویر گرافیکی باشد .
* eventها را کنترل کند و با جاوا و Plug-in ها ارتباط داشته باشد.
*فرمهای Clint-Side ایجاد کند و اطلاعات وارد شده توسط کاربر در فرمها را ارزیابی کند و در صورت وجود هرگونه خطایی در نحوه پر شدن آنها پیغام مناسب را نمایش دهد.
توانایی های جاوا اسکریپت :
توانایی ها و قابلیت های زبان جاوا اسکریپت بسیار متنوع بوده و تنها به موارد که در زیر می آید خلاصه نمی شود. در زیر لیستی از قابلیت های این اسکریپت آورده شده است:
امکان تغییر در متون نمایش داده شده در مرورگرlogo_javascript
امکان تغییر رنگها، رنگ پس زمینه و موقعیت قرار گیری المانهای استفاده شده در طراحی وب سایت
تغییر در مشخصه های المانها و CSS آنها
متحرک سازی، انیمیشن و پویا نمایی
تعامل با کاربر و از طریق المانهای ورودی نظیر Textbox ها، RadioButton ها، TextArea و غیره
عکس العمل نشان دادن به واکنش های کاربران نظیر تغییر عکسها با حرکت موس روی آنها
نمایش اخطار و یا پیام به کاربران
انجام محاسبات ریاضی
ساخت و تولید کد HTML بصورت پویا و برحسب شرایط مورد نیاز
منوهای جالب همراه با انیمیشن
جمع آوری اطلاعات کاربران از سایت و آمارگیری
مزایای جاوا اسکریپت :
در زیر لیستی از مزایای استفاده از زبان جاوا اسکریپت آورده شده است. لازم به ذکر است که مزایا این زبان برنامه نویسی تنها به این موارد ختم نمی شود:
دادن پویایی به صفحات استاتیک وب سایت ها
برخی از عملیات را نمی توان بدون استفاده از این زبان برنامه نویسی انجام داد. نظیر تعامل با کاربر، یافتن اطلاعات کاربری بازدید کنندگان نظیر IP های آنها و موارد دیگر
نزدیک بودن این زبان برنامه نویسی به زبانها برنامه نویسی دیگر نظیر C, C++ و یا C#
امکان استفاده از کتابخانه های آماده این زبان برنامه نویسی نظیر کتابخانه های استاندارد ریاضی
سادگی در برنامه نویسی و پیاده سازی بدون درگیر شدن با کامپایلرهای پیچیده.

معایب جاوا اسکریپت :

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

کند بودن در زمان اجرا بدلیل عدم کامپایل شدن کدها.

دیباگ کردن آن بسیار مشکل است.

چنانچه خطایی در اجرای برنامه رخ دهد، در برخی از موارد بدون دادن پیامی یا ارائه هیچگونه راهنمایی، از برنامه خارج می شود.

در همه مرورگرها قابل اجرا نمی باشد (در مرورگرهای قدیمی) و نیز برخی کاربران، برای سو استفاده سایت ها، امکان اجرای اینگونه اسکریپت ها را بر روی مرورگر خود لغو می کنند.

بر روی مرورگر اجرا می شود در نتیجه هیچگونه امکانی برای مبادله با سرور سایت را ندارد.

نکته ای که در پایان بار دیگر می خواهیم متذکر شویم این است که زبان جاوا اسکریپت برنامه تی است که روی کامپیوتر کلاینت یا همان مرورگر اجاره می شود (در مقایسه با اسکریپت هایی که بر روی سرور اجرا می شوند نظیر ASP یا PHP)

تفاوت جاوا و جاوا اسکریپت :

shock در عین حال که زبان جاوا اسکریپت توانایی های بسیاری در زمینه ایجاد و طراحی صفحات وب دارد به علت وجود بعضی از محدودیت ها در آن , تنها برای نوشتن برنامه های کوچک و ساده در صفحات وب بکار می رود.

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

گرچه می توان بوسیله زبان جاوا اسکریپت یک پرسشنامه یا فرم را به server فرستاد اما جاوا اسکریپت قدرت ایجاد ارتباط متقابل بین server و client را به اندازه جاوا ندارد.