آموزش جاوااسکریپت | Javascript Tutorials

معرفی جاوااسکریپت

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

جاوا اسکریپت برای اولین بار به عنوان LiveScript شناخته شد، اما Netscape نام آن را احتمالا به دلیل هیجاناتی که توسط جاوا ایجاد شد به JavaScript تغییر داد. جاوا اسکریپت اولین بار در Netscape 2.0 در سال 1995 با نام LiveScript ساخته شد. هسته همه منظوره این زبان در Netscape، اینترنت اکسپلورر و سایر مرورگرهای وب جاسازی شده است. ECMA-262 Specification نسخه استاندارد از هسته زبان جاوا اسکریپت را تعریف می کند.

JavaScript 2.0 مطابق با نسخه 5 استاندارد ECMAScript است و تفاوت بین این دو بسیار جزئی است.

امروزه، جاوا اسکریپت Netscape و JScript مایکروسافت با استاندارد ECMAScript مطابقت دارند، هرچند هر دو زبان هنوز از ویژگی هایی که جزء استاندارد نیستند پشتیبانی می کنند.

Javascript چیست؟

Javascript یک زبان برنامه نویسی داینامیک است که همانند HTML و CSS یکی از مهم ترین عنصر فناوری های وب استاندارد به شمار می رود. این زبان هم به صورت ساخت یافته و هم به صورت شی گرا مورد استفاده برنامه نویسان قرار می گیرد.

در حقیقت Javascript به صفحات وب زندگی می بخشد. این برنامه امکان اجرای چیزهای پیچیده را برای شما فراهم می کند. هر بار که یک صفحه وب، اطلاعات استاتیک، به روزرسانی های محتوا، نقشه های تعاملی، گرافیک های دو بعدی ی یا سه بعدی، اسکرول کردن jukebox های ویدئویی و غیره را به شما نمایش می دهد، می توانید از دخیل بودن Javascript در آن اطمینان حاصل کنید.

 

ویژگی های JavaScript

  • سبک وزن و تفسیر شده
  • طراحی شده برای ایجاد اپلیکیشن های شبکه محور
  • قابلیت یکپارچه سازی و ادغام با جاوا
  • قابلیت یکپارچه سازی و ادغام با HTML
  • باز و cross-platform

تاریخچه ی Javascript

Javascript در ماه مه 1995 توسط Brendan Eich در 10 روز ایجاد شد که در شرکت Netscape کار می کرد و در حال حاضر در Mozilla فعالیت می کند. از جاوااسکریپت همیشه به عنوان جاوااسکریپت نام برده نمی شد. نام اصلی آن Mocha بود، نامی که مارک آندریسن، بنیانگذار نت اسکیپ برگزید. در سپتامبر 1995 نام آن به LiveScript تغییر یافت، سپس در ماه دسامبر همان سال، پس از دریافت مجوز علامت تجاری از Sun، نام جاوااسکریپت پذیرفته شد.

در سال های 1996 تا 1997، نت اسکیپ، Javascript را برای استاندارد سازی به سازمان ECMA ارسال کرد که در نهایت منجر به انتشار رسمی نسخهٔ استاندارد شده‌ای به نام ECMA Script  شد.

فریمورک های Javascript

مزیت های Javascript

پیاده سازی جاوا اسکریپت بسیار آسان است. همه کاری که باید انجام دهید این است که کد خود را در سند HTML قرار دهید و به مرورگر بگویید که این جاوا اسکریپت است.

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

جاوااسکریپت می تواند آنچه که در مرورگر شما رخ می دهد را امتحان کند و طبق آن واکنش نشان دهد. این عمل، به عنوان اصول جاوا اسکریپت غلط و گاهی اوقات اسکریپت های دفاعی نامیده می شود. جاوااسکریپت می تواند به مشکلات مرورگر و پشتیبانی آن کمک کند. برای مثال: حل مشکلات طرح بندی CSS در مرورگرهای خاص.

کاربرد Javascript

  • تحرک پذیری المان ها در صفحه وب
  • ارتقای رابط های HTML
  • حل مشکلات صفحه بندی
  • پیشنهاد نتایج در جعبه جستجو در زمانی که شما در آن تایپ می کنید و بر اساس آنچه تا کنون وارد کرده اید نتایجی را ارائه می دهد
  • سرعت بالا و حافظه کوچک جاوا اسکریپت در مقایسه با سایر زبانها
  • بدون ارسال پیام به سرور، اجازه می دهد تا همه چیز در مرورگر کاربر اتفاق بیفتد.
  • می توانید در مرورگر به HTML استاتیک خود چیزی بیافزایید یا آن را تغییر دهید.

تفاوت Javascript و Java

بر خلاف شباهت اسمی آنها، کاملا متفاوت از یکدیگر هستند. جاوا یک زبان برنامه نویسی Object Oriented است که با یک interpreter بر روی چندین سیستم عامل اجرا می شود و توسط شرکت Sub Microsystems طراحی و پیاده سازی شده است. این زبان برنامه نویسی برای تولید نرم افزار قابل استفاده بر روی پلتفرم های مختلف ایجاد شد. درحالیکه، جاوااسکریپت توسط شرکت Netscape طراحی شد و در حقیقت یک زبان اسکریپت نویسی می باشد. پس،  نیازی به فرآیند کامپایل شدن و کامپایلر ندارد و توسط مرورگر اینترنت اجرا می شود.

آموزش VueJs

VueJS یک فریمورک جاوا اسکریپت پیشرفته است که برای توسعه رابط های وب تعاملی استفاده می شود. VueJS یکی از معروف ترین فریمورک های مورد استفاده برای ساده سازی توسعه وب می باشد. VueJS روی لایه view تمرکز می کند و توسط Evan You، کارمند سابق Google ایجاد شده است. اولین نسخه VueJS در فوریه 2014 منتشر شد.

Client-side JavaScript

Client-side JavaScript متداول ترین شکل زبان است. اسکریپت باید با سند HTML برای کدی که توسط مرورگر تفسیر می شود مشمول شود یا ارجاع داده شود. این بدان معنا است که یک صفحه وب نباید یک HTML استاتیک باشد، بلکه می تواند شامل برنامه هایی باشد که با کاربر تعامل برقرار، مرورگر را کنترل و محتوای HTML را به صورت پویا ایجاد کند. مکانیزم سمت کلاینت جاوا اسکریپت، مزایای بسیاری نسبت به اسکریپت های سمت سرور CGI دارد. برای مثال، شما ممکن است از جاوا اسکریپت برای بررسی اینکه آیا کاربر یک آدرس ایمیل معتبر را در یک فیلد فرم وارد کرده اید استفاده کنید. کد جاوا اسکریپت هنگامی که کاربر فرم را اجرا می کند، اجرا می شود و تنها اگر تمام ورودی ها معتبر باشند، آنها می توانند به وب سرور منتقل شوند. جاوا اسکریپت می تواند برای بررسی رویدادهایی که کاربران ایجاد می کنند مانند دکمه های کلیک، ناوبری لینک و سایر اقداماتی که کاربر به طور صریح یا به طور ضمنی انجام می دهد مورد استفاده قرار گیرد.

محدودیت های جاوا اسکریپت

ویژگی Client-side JavaScript اجازه خواندن یا نوشتن فایل ها را نمی دهد. این به خاطر دلیل امنیتی حفظ شده است.

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

جاوا اسکریپت هیچ قابلیت multi-threading یا multiprocessor ندارد.

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

  • Visual Studio Code
  • WebStorm
  • Atom
  • Sublime Text
  • Vim
  • IntelliJ IDEA
  • Neovim
  • Spacemacs
  • Brackets
  • Emacs
  • NetBeans
  • SourceLair
  • Cloud9
  • Codeanywhere
  • Light Table
  • Visual Studio
  • Codenvy
  • Komodo Edit
  • PhpStorm
  • TextMate
  • Komodo IDE
  • coda 2
  • CodeLite IDE
  • PLAYCODE.io
  • ++Notepad
  • Angular IDE
  • BBEdit
  • Eclipse with JSDT
  • Aptana Studio
  • Kakoune
  • Dreamweaver
  • SlickEdit
  • Codelobster
  • Goorm IDE
  • Chocolat
  • Zed
  • slap
  • آشنایی با Sequelize ORM برای Node.js

آشنایی با Sequelize ORM برای Node.js

چهارشنبه ۲۵ مهر ۱۳۹۷ - ساعت ۰۸:۰۰
  • آموزش توسعه تست محور برای جاوا اسکریپت با React

آموزش توسعه تست محور برای جاوا اسکریپت با React

دوشنبه ۲۳ مهر ۱۳۹۷ - ساعت ۱۸:۰۰
  • دوره کامل Angular 

دوره کامل Angular 

دوشنبه ۲۳ مهر ۱۳۹۷ - ساعت ۰۸:۰۰
  • دوره جاوا اسکریپت شی گرا به همراه مثال

دوره جاوا اسکریپت شی گرا به همراه مثال

دوشنبه ۲۳ مهر ۱۳۹۷ - ساعت ۰۴:۰۰
  • آموزش Code Coverage با Istanbul

آموزش Code Coverage با Istanbul

شنبه ۲۱ مهر ۱۳۹۷ - ساعت ۱۴:۰۰
  • دوره Vue.js: Big Picture

دوره Vue.js: Big Picture

جمعه ۲۰ مهر ۱۳۹۷ - ساعت ۲۳:۰۰
  • آموزش ایجاد اپلیکیشن Cryptocurrenciy با AJAX API

آموزش ایجاد اپلیکیشن Cryptocurrenciy با AJAX API

جمعه ۲۰ مهر ۱۳۹۷ - ساعت ۰۳:۰۰
  • آموزش استفاده از تکنیک Infinite scrolling در وب سایت ها

آموزش استفاده از تکنیک Infinite scrolling در وب سایت ها

جمعه ۲۰ مهر ۱۳۹۷ - ساعت ۰۱:۰۰
  • آموزش ساخت بازی تعاملی با جاوااسکریپت

آموزش ساخت بازی تعاملی با جاوااسکریپت

پنج شنبه ۱۹ مهر ۱۳۹۷ - ساعت ۲۱:۰۰
  • آموزش کار با YouTube API با Jquery و Ajax

آموزش کار با YouTube API با Jquery و Ajax

پنج شنبه ۱۹ مهر ۱۳۹۷ - ساعت ۱۹:۰۰
  • آموزش JavaScript AJAX و Web API

آموزش JavaScript AJAX و Web API

پنج شنبه ۱۹ مهر ۱۳۹۷ - ساعت ۱۷:۰۰
  • آموزش جاوااسکریپت و جی کوئری در 7 روز

آموزش جاوااسکریپت و جی کوئری در 7 روز

چهارشنبه ۱۸ مهر ۱۳۹۷ - ساعت ۰۷:۰۰
  • آموزش ایجاد و استقرار اپلیکیشن های Angular با کانتینرهای Docker

آموزش ایجاد و استقرار اپلیکیشن های Angular با کانتینرهای Docker

سه شنبه ۱۷ مهر ۱۳۹۷ - ساعت ۰۸:۰۰
  • آشنایی مقدماتی با JavaScript DOM

آشنایی مقدماتی با JavaScript DOM

دوشنبه ۱۶ مهر ۱۳۹۷ - ساعت ۰۸:۰۰
  • تمرین کار با JSON در جاوااسکریپت

تمرین کار با JSON در جاوااسکریپت

یکشنبه ۱۵ مهر ۱۳۹۷ - ساعت ۱۶:۰۰
  • آشنایی با ایجاد API با GraphQL

آشنایی با ایجاد API با GraphQL

پنج شنبه ۱۲ مهر ۱۳۹۷ - ساعت ۱۸:۰۰
  • آموزش ساخت بازی با جاوااسکریپت

آموزش ساخت بازی با جاوااسکریپت

چهارشنبه ۱۱ مهر ۱۳۹۷ - ساعت ۱۰:۰۰
  • آموزش توسعه وب MEAN Stack با جاوااسکریپت

آموزش توسعه وب MEAN Stack با جاوااسکریپت

سه شنبه ۱۰ مهر ۱۳۹۷ - ساعت ۱۴:۰۰
  • آموزش Mapping و Styling در D3

آموزش Mapping و Styling در D3

شنبه ۰۷ مهر ۱۳۹۷ - ساعت ۰۳:۰۰
  • آموزش پروژه های دنیای واقعی با Vue.js

آموزش پروژه های دنیای واقعی با Vue.js

جمعه ۰۶ مهر ۱۳۹۷ - ساعت ۰۳:۰۰