جاوا اسکریپت زبان برنامهنویسی پویا و مبتنی بر شی (Object-based) است که هم سمت کاربر و هم سمت سرور، برای ایجاد تعمال با صفحات وب به کار میرود. جایی که HTML و CSS ساختار اولیه و ظاهر صفحات وب را تعیین میکنند، جاوا اسکریپت نحوه عملکرد صفحات وب را کنترل میکند.
جاوا اسکریپت، تجربه کاربر را از صفحه وب با تبدیل آن از یک صفحه استاتیک به یک صفحه تعاملی بهبود میبخشد. بطور خلاصه، جاوا اسکریپت به صفحات وب رفتار میبخشد.
تاریخچه
شبکهی جهانی وب با تعدادی صفحهی وب که توسط ابر پیوندها (Hyperlinks) به هم متصل شده بودند شروع به کار کرد. به زودی کاربران احساس کردند که احتیاج به تعامل بیشتری با صفحات وب دارند. بنابراین شرکت Netscape از یکی از کارمندانش به نام برندن آیک (Brendan Eich) خواست تا زبان جدیدی را برای این منظور برای مرورگر این شرکت توسعه دهد. به دلیل شدت رقابت بین Netscape و مایکروسافت در بازار مرورگرها، لازم بود تا این کار خیلی زود انجام شود.
آیک در عرض ۱۰ روز با اقتباس برخی مفاهیم از زبانهایی مانند Perl، Java، AWK، Scheme و ... زبان جدیدی را ابداع کرد که نام آن را Mocha گذاشت. اما بعداً به LiveScript و سپس خیلی زود به JavaScript تغییر نام داد. دلیل استفاده از این نام، محبوبیت زبان Java در آن دوره بود. اما این نامگذاری معمولاً موجب این برداشت غلط شده است که JavaScript نسخهی ساده شده (یا نسخهی مفسری) زبان Java است. در واقع هیچ ارتباط ویژهای بین Java و JavaScript وجود ندارد. تنها شباهت این دو در این است که هر دو زبانهای برنامهنوسی هستند (مانند بسیاری زبانهای دیگر)، ولی هیچ شباهت و ارتباط ویژهای با یکدیگر ندارند.
جاوا اسکریپت اولین بار در نسخهی دوم مرورگر Netscape Navigator در سال ۱۹۹۵ شروع به کار کرد. حدود یک سال بعد مایکروسافت زبان مشابهی را با مهندسی معکوس برای خود ایجاد کرد که آن را در نسخهی سوم مرورگر Internet Explorer تعبیه کرد و نام این زبان را Jscript گذاشت. دلیل این نامگذاری و عدم استفاده از نام JavaScript جلوگیری از بروز مشکلات مربوط به نقض قوانین کپی رایت بود. چرا که نام Java به عنوان یک علامت تجاری توسط شرکت Sun Microsystems که از رقبای مایکروسافت هم بود ثبت شده بود. اما با وجود نامگذاری متفاوت، JavaScript و JScript تقریباً از هر نظر یکسان بودند.
جاوا اسکریپت (و Jscript) به سرعت محبوبیت زیادی کسب کردند. جاوا اسکریپت برای یادگیری و شروع به کار، زبان بسیار سادهای بود که همین امر موجب رشد سریع این زبان در ایجاد صفحات وب پویا شد. البته این سادگی جاوا اسکریپت یک ایراد هم به حساب میآمد. چرا که حالا افراد بسیار زیادی بدون اینکه معنی کدها را به خوبی درک کنند شروع به کار با جاوا اسکریپت کردند، در بسیاری از موارد کدها از روی یکدیگر کپی میشد. در نتیجه در اوایل کار کدهای پُر اشکال و بیکیفیت زیادی با جاوا اسکریپت در سطح وب فراگیر شد. همچنین جاوا اسکریپت تعدادی کاربردهای منفی نیز پیدا کرد. مانند باز شدن صفحات تبلیغاتی آزار دهنده (Popup) در صفحات وب.
کاربردهای جاوا اسکریپت
جاوا اسکریپت عمدتا برای برنامههای مبتنی بر وب و مرورگرهای وب مورد استفاده قرار میگیرد. اما جاوا اسکریپت نیز فراتر از وب در نرم افزار، سرورها و کنترلهای سخت افزاری استفاده میشود. در ادامه برخی از مواردی که جاوا اسکریپت در آنها پرکاربرد هستند را نام میبریم:
1. اضافه کردن رفتار تعاملی به صفحات وب
جاوا اسکریپت به کاربران اجازه میدهد تا با صفحات وب ارتباط برقرار کنند. تقریبا هیچ محدودیتی برای چیزهایی که میتوانید با جاوا اسکریپت در یک صفحه وب انجام دهید وجود ندارد. در ادامه به چندی از این قابلیتها میپردازیم.
· نمایش یا پنهان کردن اطلاعات بیشتر با کلیک یک دکمه
· تغییر رنگ یک دکمه زمانی که ماوس روی آن قرار میگیرد
· نمایش اسلاید تصاویر در صفحه اصلی وب
· زوم کردن بر روی یک عکس
· نمایش تایمر یا شمارش معکوس در وب سایت
· پخش فایل صوتی و تصویری در یک صفحه وب
· نمایش انیمیشنها
2. ایجاد برنامههای وب و موبایل
توسعه دهندگان میتوانند از فریمورکهای مختلف جاوا اسکریپت برای توسعه و ساخت برنامههای وب و موبایل استفاده کنند. فریمورکهای جاوا اسکریپت مجموعهای از کتابخانههای جاوا اسکریپت هستند که قابلیت نوشتن کد از قبل را به توسعه دهندگان برای استفاده از ویژگیهای برنامهنویسی روزمره ارائه میدهند: به معنای واقعی کلمه یک فریمورک برای ساخت وب سایتها یا برنامههای کاربردی وب.
فریمورکهای محبوب جاوا اسکریپت React، Angular و Vue میباشند. بسیاری از شرکتها از Node.js که یک محیط runtime جاوا اسکریپت برروی موتور V8 گوگل کروم میباشد استفاده میکنند. چند نمونه از مثالهای مشهور آن: PayPal، LinkedIn، Netflix و Uber میباشد.
3. ساخت وب سرورها و توسعه برنامههای کاربردی سرور
فراتر از وبسایتها و برنامههای کاربردی، توسعه دهندگان همچنین میتوانند از جاوا اسکریپت برای ساخت وب سرورهای ساده و توسعه زیرساختهای back-end توسط Node.js استفاده کنند.
4. توسعه بازی
شما همچنین میتوانید از جاوا اسکریپت برای ایجاد بازیهای مرورگر استفاده کنید. اینها یک راه عالی برای تمرین مهارتهای برنامهنویسان مبتدی میباشد.
چرا از جاوا اسکریپت در مقایسه با سایر زبانهای برنامهنویسی؟
به غیر از امکانات نامحدود، دلایل زیادی برای توسعه دهندگان وب برای استفاده از جاوا اسکریپت در مقایسه با سایر زبانهای برنامهنویسی وجود دارد:
· جاوا اسکریپت تنها زبان برنامهنویسی بومی برای مرورگر وب است
· جاوا اسکریپت محبوبترین زبان است
· پایین بودن threshold برای شروع
· یک زبان سرگرم کننده برای یادگیری
نام | تعداد آزمون | میزان موفقیت | |
---|---|---|---|
![]() |
َAmeneh Darvishzadeh | 1 | 100/00 % |
![]() |
Mehrad Hashemi | 1 | 100/00 % |
![]() |
مهدی حسین پور آقائی | 1 | 100/00 % |
![]() |
zahra namdari | 46 | 98/21 % |
![]() |
یاسمن محمدی پور | 4 | 98/08 % |
![]() |
فرنوش طغیانی | 17 | 98/06 % |
![]() |
Tara Mohammadi | 3 | 96/43 % |
![]() |
yasaman mohamadipur | 51 | 95/86 % |
![]() |
محمدجواد ملائی اردستانی | 3 | 94/44 % |
![]() |
Arzhang Saberi | 4 | 93/33 % |
![]() |
Soheila Karimi | 123 | 92/71 % |
![]() |
aram farhmand | 10 | 92/31 % |
![]() |
یاشار اسکندری | 98 | 91/14 % |
![]() |
پریسا سلوکی شهرضایی | 72 | 89/49 % |
![]() |
ارشیا قلمکاری | 33 | 89/23 % |
![]() |
Omid Aghababaei | 20 | 87/92 % |
![]() |
سجاد آقابابایی | 2 | 87/50 % |
![]() |
محدثه درویشی | 1 | 87/50 % |
![]() |
Fardin Azhdari | 27 | 86/58 % |
![]() |
نازيلا حاجي صباغ | 31 | 85/94 % |