تعداد بازدید: 468

راهنمای گرامر و ساختمان داده های جاوا اسکریپت

جاوا اسکریپت یا به اختصار “JS” یک زبان برنامه نویسی یا در حقیقت یک ابزار است که مفسر آن این ابزار را در اختیار شما قرار می دهد تا از آن در جهت توسعه وب در سمت کلاینت (مرورگر) و در سمت سرور ( با استفاده از نرم افزارهایی که در سرور خود نیاز است نصب کنید ) “Node.js” قابل اجرا است.

زبان جاوا اسکریپت یک ابزار در دو جهت (Client Side Scripting , Server Side Scripting) می باشد. client side قادر به نوشتن در hard disk به صورت مستقیم نیست (کاربر جاری سیستم عامل نیست و صرفا کاربر جاری سیستم عامل کلاینت است ) ولی در server side با استفاده از نصب نرم افزار روی سیستم عامل سرور این امکان فراهم می گردد.

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

این زبان توسط ‌Brandan Eich شرکت Netscape که یک شرکت نرم افزاری (Internet, software, & telecommunication) است در سال ۱۹۹۵ ایجاد شده است.کتابخانه ها یا فریم ورک ها معروف این زبان :

  • jQuery
  • React
  • Vue
  • Embar
  • Angular

جاوا اسکریپت یک زبان با ویژگی cross-platform, object-oriented است که یکی از کاربرد های آن تعامل بیشتر کاربران با صفحات وب است ( ساختار animation,event,..).

محیط های اجرای کد های جاواسکرپیت console مرورگر و مفسر node است . برای اجرای کد های جاوا اسکریپت ما نیاز به JavaScript interpreter داریم .

مرورگر (Browser Console command line)

console مرورگر حاوی لاگ های جاوا اسکریپت صفحه لود شده است و همچنین در آن مفسر جاواسکریپت لود شده است (JavaScript interpreter) .با فشردن کلید های ترکیبی ctrl + shift + I این محیط جهت اجرای دستوری جاوا اسکریپت (javascript statement OR javascript expression) محیا است.

این دستورات در قالب single line input , multi line input در مرورگر قابل اجرا است که مرورگر های مدرن این دو را به صورت هوشمند تفکیک می کنند.برای اجرای نهایی کد نوشته شده () در محیط باید کلید های ترکیبی ctrl + enter اقدام کنید.

البته علاوه بر فعال بودن مفسر جاوا اسکریپت یک سری اشیا جاری در مرورگر نیز در این محیط فعال است. لیست اشیا فعال در مرورگر که در محیط console فعال است :

  • Window Object
  • Screen Object
  • Location Object
  • History Object
  • Navigator Object
  • Popup Boxes
  • Cookies

مرورگر اطلاعات کاربر را نگه می دارد و اطلاعات وب سایت را از طریق ارتباط با وب سرور دریافت می کند . در حقیقت مرورگر یک نرم افزار است که با استفاده از پروتکل Http قرار است اطلاعات وب سایت ها را در قالب وب سایت نمایش بدهد . تکنولوژی های استفاده شده در مرورگر برای نمایش اطلاعات عبارتست از Html , Css , JavsScript .

NodeJS

nodejs یک نرم افزار محیط اجرای کد های جاوا اسکریپت (cross-platform and opensource Javascript runtime environment) در خارج از مرورگر (وب سرور) است . با استفاده از این نرم افزار می توانید کد های جاوا اسکریپت را اجرا کنید. در حقیقت جاوا اسکریپت یک زبان برنامه نویسی است و nodejs یک محیط اجرای کد های جاوا اسکریپت در سرور است (Javascript runtime environment).

همان طور که در موتور اصلی مرورگر (Browser Engine) قابلیت اجرای جاوا اسکریپت را داریم در nodejs نیز این قابلیت برای ما فراهم است (Javascript engine inside of node.js)

برای نصب جاوا اسکریپت در سیستم عامل باید مراحل زیر را طی کنیم :

۱) ابتدا با استفاده از ابزار مدیریت پکیج apt باید لیست کتابخانه ها را بروز کنیم (Refresh your local package)

sudo apt update

۲) نصب nodejs

sudo apt install nodejs

۳) برای دریافت نسخه جاری nodejs دستوری زیر را اجرا می کنیم :

node -v

برای اجرای کد های جاوا اسکریپت نیاز است تا فایل جاوا اسکریپت را با فرمت *.js ایجاد کنیم و پس از آن node FILEPATH را اجرا کنیم. به طور مثال کد زیر در محیط ترمینال محتوای فایل index.js را اجرا می کند:

node index.js

گرامر و ساختمان داده (Grammer and DataStructure)

زبان جاوا اسکریپت ریشه از زبان C دارد و این حیث بسیار نزدیک به زبان های C , C++ , Java است . همچنین تحت تاثیر زبان های مثل python , prel , AWK نیز قرار گرفته است. زبان جاوا اسکریپت case sensitive است و از Unicode character set استفاده می کند . یعنی تعریف متغیر به زبان های دیگر مثل آلمانی نیز امکان پذیر است.

let Früh = "foobar"

comments

برای کد کامنت می توان از ساختار های /**/ , //  استفاده کرد که بسیار نزدیک به زبان C++ و زبان های برنامه نویسی سی بیس می باشد.

// a one line comment

/* this is a longer,
 * multi-line comment
 */

Variables

برای تعریف متغیر در جاوا اسکریپت از کلمات کلیدی let , var , const استفاده می کنیم. هر کدام از این کلمات کلیدی ویژگی های خاص خود را از نظر ناحیه دسترسی (scope) و نحوه مقدار دهی دارند.

var name ="ali",
    famil = "alavi"
    job = "teacher"

const person = {
   name: 'abolfazl',
   getName: function(){
      return this.name
   },
   getFamil: function(){
      return famil
   },
   getThis: function(){
      return this
   }
}

const hello = function(){
   console.log('hello world')
}

نکته مهم : در تعریف نام متغیر بهتر است از علامت $ استفاده نکنیم . این کاراکتر جزو کاراکتر های مجاز در تعیین نام متغیر است و وجود و عدم وجود آن باعث تغییر در متغیر می گردد.

var name='ali'
var $name='hossein'
console.log(name); 
"ali"

Data structures and types

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

  • Boolean : ساختمان داده ای که برابر با یکی از دو مقدار true , false می باشد.
  • null : ساختمان داده ای است که بر هیچ دلالت می کند . به دلیل case sensitive بودن جاوا اسکریپت null با NULL برابر نیست . نوع داده این ساختمان داده در عملگر Typeof برابر با object است.
  • undefined : اگر مقداری برای متغیر تعریف نشده باشد.
  • Number : معادل همان integer در سایر زبان ها است . در این مورد قرار است اعداد قرار بگیرند . به صورت اعشاری و غیر اعشاری
  • String
  • Array : آرایه و اشیا به صورت کامل نوع آن ها object می باشد . در این صورت اگر Typeof Array را تست کنید object است . این مقدار برای نوع داده object نیز همین است.
  • Object : رفتار آن بسیار شبیه به آرایه است از لحاظ دسترسی و می توان گفت یک آرایه انجمنی که قابلیت تعریف کلید با مقدار تابع را دارد.
  • Class
  • Date
  • Math

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

نوع داده در جاوا اسکریپت به صورت داینامیک تعیین می گردد.

 let x;           // Now x is undefined
x = 5;           // Now x is a Number
x = "John";      // Now x is a String

در زبان TypeScript ما قادر به تعیین نوع داده هستیم . Typescript یک زبان کامپایلری است که ویژگی های ES6 را در خود دارد و در نهایت با کامپایل به زبان javscript تبدیل می گردد. دقت داشته باشید که مرورگر تنها زبان Javascript را تشخیص می دهد.

Ecma Script

اکما اسکریپت – ES – یک استاندارد برای تعریف نسخه های مختلف جاوا اسکریپت است . مهم ترین نسخه آن ES6 است که در سال ۲۰۱۵ معرفی شده است.مرورگر های مختلف پشتیبانی نسخه های مختلف ecma script را با همین نسخه ها معرفی می کنند. Ecma Script برای برنامه نویسی و پویا سازی در سمت کلاینت است و برای استفاده از جاوا اسکریپت در سمت سرور باید از Nodejs استفاده کنیم.

  • نخستین نسخه Ecma Script در سال ۱۹۹۷ منتشر شد
  • Ecma Script 6 در سال ۲۰۱۵ بیشترین امکانات را نسبت به نسخه پیشین خود داشت که زمینه ساز کتابخانه ها و فریم ورک های جاوا اسکریپت نظیر React بود. در زیر برخی امکانات آن را ذکر می کنیم:
    • Class
    • Modules
    • Promise
    • Template Literals
  • پس از نسخه ۶ تقریبا هر سال نسخه ای جدید از Ecma Script منتشر می گردد که در سال ۲۰۲۱ نسخه ۱۲ آن را داریم (12th Edition – ECMAScript 2021)

مستندات امکانات Ecma Script را می توانید در  ECMAScript 6: New Features: Overview and Comparison مشاهده کنید.

مطالب مشابه

JavaScript Statements

در جاوا اسکریپت دستورالعمل های قابل اجرا را statement می گوییم که توسط مفسر جاوا اسکریپت (JavaScript interpreter) که می...

Browser Object Model – BOM

هر محیط اجرای جاوا اسکریپت شامل یک شئ global است که برنامه در آن جریان دارد . این شئ در جاوا اسکریپت بسته به نوع محیط...

اشتراک گذاری :

مدیر وب سایت گنوتک . برنامه نویسی رو با زبان C در هفده سالگی شروع کردم . در حال حاضر به برنامه نویسی php برپایه معماری MVC , HMVC و همچنین سیستم مدیریت محتوای WordPress و فریم ورک محبوب لاراول علاقه مند هستم و دوست دارم اطلاعاتم رو با شما به اشتراک بگذارم.

۰ دیدگاه برای راهنمای گرامر و ساختمان داده های جاوا اسکریپت

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *