آموزش جاوااسکریپت | 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
  • آموزش سریع جاوااسکریپت

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

شنبه ۱۷ آذر ۱۳۹۷ - ساعت ۱۶:۰۰
  • دوره Nuxt.js – Vue.js on Steroids

دوره Nuxt.js – Vue.js on Steroids

پنج شنبه ۱۵ آذر ۱۳۹۷ - ساعت ۰۲:۰۰
  • آموزش مقدماتی توسعه Frontend با React

آموزش مقدماتی توسعه Frontend با React

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

آموزش چرخه عمر متغیرهای جاوااسکریپت

چهارشنبه ۱۴ آذر ۱۳۹۷ - ساعت ۱۲:۰۰
  • چالش های JavaScript و ES6 – آیا با جاوااسکریپت آشنایی دارید؟

چالش های JavaScript و ES6 – آیا با جاوااسکریپت آشنایی دارید؟

چهارشنبه ۱۴ آذر ۱۳۹۷ - ساعت ۰۲:۰۰
  • آموزش درک (NPM (Node.js Package Manager

آموزش درک (NPM (Node.js Package Manager

دوشنبه ۱۲ آذر ۱۳۹۷ - ساعت ۱۵:۰۰
  • دوره اصول Angular 5

دوره اصول Angular 5

یکشنبه ۰۴ آذر ۱۳۹۷ - ساعت ۱۹:۰۰
  • آموزش Protractor (ابزار خودکارسازی Angular) از ابتدا

آموزش Protractor (ابزار خودکارسازی Angular) از ابتدا

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

آموزش تمرین جاوااسکریپت – بازی Target Blaster

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

دوره مبانی AJAX 

پنج شنبه ۰۱ آذر ۱۳۹۷ - ساعت ۱۱:۰۰
  • آموزش اپلیکیشن Image Uploader با Google Apps Script

آموزش اپلیکیشن Image Uploader با Google Apps Script

دوشنبه ۲۸ آبان ۱۳۹۷ - ساعت ۱۵:۰۰
  • آموزش جاوااسکریپت برای مبتدیان – آشنایی با مفاهیم اصلی جاوااسکریپت

آموزش جاوااسکریپت برای مبتدیان – آشنایی با مفاهیم اصلی جاوااسکریپت

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

دوره تمرینی جاوااسکریپت – ساخت بازی Tank Shooter 

جمعه ۲۵ آبان ۱۳۹۷ - ساعت ۲۰:۰۰
  • آموزش توسعه وب با Angular و Webpack 4

آموزش توسعه وب با Angular و Webpack 4

چهارشنبه ۲۳ آبان ۱۳۹۷ - ساعت ۲۰:۰۰
  • آموزش Isomorphic JavaScript با MEVN Stack

آموزش Isomorphic JavaScript با MEVN Stack

چهارشنبه ۲۳ آبان ۱۳۹۷ - ساعت ۱۴:۰۰
  • دوره توسعه وب با React

دوره توسعه وب با React

سه شنبه ۲۲ آبان ۱۳۹۷ - ساعت ۱۸:۰۰
  • آموزش JSON – دوره مبتدی برای یادگیری JSON با JavaScript

آموزش JSON – دوره مبتدی برای یادگیری JSON با JavaScript

جمعه ۱۸ آبان ۱۳۹۷ - ساعت ۱۵:۰۰
  • آموزش دفاع در برابر حملات JavaScript Keylogger در اطلاعات کارت پرداخت

آموزش دفاع در برابر حملات JavaScript Keylogger در اطلاعات کارت پرداخت

جمعه ۱۸ آبان ۱۳۹۷ - ساعت ۰۹:۰۰
  • آموزش ساخت بازی Wack a Mole با JQuery 

آموزش ساخت بازی Wack a Mole با JQuery 

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

آموزش تمرینات AJAX API و اپلیکیشن وب جاوااسکریپت

جمعه ۱۸ آبان ۱۳۹۷ - ساعت ۰۱:۰۰