همه چیز درباره جاوااسکریپتJavascript و تفاوت آن با اکما اسکریپت
برنامه نویسی

همه چیز درباره جاوااسکریپتJavascript و تفاوت آن با اکما اسکریپت

قبل از بررسی زبان جاوااسکریپت انواع زبان برنامه نویسی را بررسی میکنیم.

تمام زبان های برنامه نویسی به دو دسته ی

Interpreter.1 زبان برنامه نویسی مفسری- به زبان مفسری ، اسکریپتی هم میگویند.

Compiler.2 زبان برنامه نویسی کامپایلری

حالا تفاوت این دو دسته زبان برنامه نویسی در نحوه تبدیل کد ها به ماشین است!

در کامپایلر تمام کد ها بصورت یکجا به ماشین تبدیل و اما مفسری تبدیل کد به ماشین بصورت خط به خط انجام میدهد و عملیات ها در هر خط بررسی میشوند.

به زبان مفسری زبان اسکریپتی هم میگویند.

 

زبان برنامه نویسی جاوااسکریپت JavaScript چیست؟

جاوااسکریپت زبانی اسکریپت نویسی با کاربردی همه منظوره و همه جانبه ، کراس پلتفرم ، شیءگرا ، سطح بالا و چند پارادایمی است.این زبان یکی از محبوب ترین زبان های برنامه نویسی که از شیوه های مختلف برنامه نویسی پشتیبانی میکند. وازآن می‌توان برای برنامه نویسی سمت سرور (Server Side) استفاده کرد.

اما با پیشرفت های شکل گرفته موتور های جدید جاوااسکریپت قابلیت کامپایل در لحظه را دارند تا سرعت را افزایش☄️ دهند. 

با استفاده از جاوااسکریپ JavaScript برنامه نویسی در هرپلتفرمی مثل لینوکس ،ویندوز،مک، iOS و اندروید قابل انجام است.

 منظور از پارادایم در برنامه نویسی چیست؟

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

تاریخچه ایی کوتاه از زبان برنامه نویسی جاوااسکریپت JavaScript !

این زبان توسط برندن ایچ در تاریخ می 1995توسط یکی از کارمندان شرکت Netscape  خلق شد.

ایده و شروع ساخت این زبان نیاز این شرکت به صفحات وب پویا و خلاقانه تر بود.

و حالا برندن میبایست زبانی اسکریپتی بسازد که در کدهای HTMLدست ببرد و به راحتی برای باقی افراد از جمله طراحان و برنامه نویسان قابل فهم(خیلی ممنون 🤨آقای برندن) و استفاده باشد.در ابتدا اسم این زبان Mocha بود اما

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

 

 

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

برای اجرای جاوااسکریپت روی مرورگر های مختلف از Engine که موتور های پردازشی هستند استفاده میشود.

🟡موتورهای Nitro و SquirrelFish : مرورگر سافاری

🟡موتورهای Trident و Chakra : ورژن‌های مختلف اینترنت اکسپلورر

🟡موتور SpiderMonkey : ایرفاکس

🟡موتور V8 : اپرا و کروم

🟡موتور ChakraCore : Edge

نحوه کار موتور ها به این صورت است که ابتدا کد ها را ترجمه میکنند در ادامه اسکریپت ها را به زبان ماشین کامپایل میکنند تا نهایتا اجرا شوند.با استفاده از JavaScript Virtual Machine قابل اجرا برای تمامی پلتفرم هاست.

 

🚀با وجودفریم ورک هایی مانند Node.JS و Express.JS می‌توان به عنوان زبان سمت سرور هم از این زبان استفاده شود.

کاربرد های جاوااسکریت Javascript در برنامه نویسی .

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

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

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

کنترل فرم ها و جداول و ساخت اسلایدر های ثابت و متحرک و امکان ایجاد داده های داینامیک سمت کاربر از ویژگی های جاوااسکریپت JavaScript محبوب است.

توسعه بازی ها و نرم افزارهای پیشرفته نیز ممکن است.

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

🔵 برنامه نویسی بک اند

🔵 برنامه نویسی فرانت اند

🔵 نرم افزار های موبایل

🔵 نرم افزار های دسکتاپ

 

مثال) با ایجاد یک دکمه بعد از کلیک کردن کاربربا استفاده از جاوااسکریپت پیغام برای او به نمایش در می آید.  

 

 

<button>Click me</button>

//ساخت دکمه برای کاربر تا بعد از کلیک پیغام برای او به نمایش درآید!

/* Selecting DOM element */
const button = document.querySelector("button");
/* Callback function */
function alertButton() {
    alert('Hi native JavaScript');
}
/* Event listener */
button.addEventListener("click", alertButton, false);

 

اکما اسکریپت (ECMAScript) چیست؟

اکمااسکریپت یک زبان اسکریپت نویسی استاندارد یا به بیانی دیگر یک سری قوانین و استاندارد های تعین شده است که توسط سازمان ECMA  استاندارد سازی و طراحی شده و حال هم در حال توسعه و بهبود است.

سازمان ECMA مخفف European Computer Manufacturers Association

💡سازمان تولید کنندگان اروپا یک سازمان بین المللی که به طور اختصاصی در حوضه توسعه  استانداردهای الکترونیکی و کامپیوتری فعالیت می‌کند.

این سازمان ECMA بهمراه سایر سازمان های استاندارد سازی درراستای ایجاد استاندارد های جدید و بهتر شدن فعالیت های مرتبط با تکنولوژی های مختلف همچون زبان های برنامه نویسی میپردازد.

 

حال چرا جاوااسکریپت از اکمااسکریپت استفاده میکند؟!

درابتدا این زبان برنامه نویسی استاندارد سازی نشده بود و مقبولیت چندانی نداشت و مرورگرهای مختلف برای اجرای آن به مشکل برخورد کرده بودند و تفاوت های Engine باعث متفاوت شدن اجرای جاوااسکریپت روی مرورگر های مختلف شده بود.

در همین راستا شرکت نت‌اسکیپ این زبان برنامه نویسی را به سازمان اکما اینترنشنال (ECMA International) ارسال کرد تا استاندارد سازی گردد و در نتیجه نسخه ی بهینه و استاندارد آن با نام اکما اسکریپت (ECMAScript) روانه بازار شد.

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

بزرگترین تغییرات در جاوااسکریپت در نسخه های ES5در سال 2009 سپس ES6در سال 2015 بود.

 

 

نقاط ضعف زبان برنامه نویسی جاوااسکریپتJavaScript چیست ...

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

در تشخیص خطا ها حین دیباگ کردن کد ها دشواری وجود دارد. 

بر روی مرورگر های قدیمی اجرا نمیشودو در برابر اکسپلویت ها نفوذ پذیر است.

با ایجاد محدودیت در اجرای اسکریپت های جاوااسکریپت جهت حفظ امنیت محدود سازی میکند.

محبوب ترین فریم ورک های جاوااسکریپت...

⚡بزودی تکمیل ترین دوره آموزشی پروژه محور این زبان برنامه نویسی محبوب و همه فن حریف در وبسایت وایلدکدر برای شما دوستان قرار خواهد گرفت⚡

 

چند مثال از جاوااسکریپت ...

برنامه برش یک رشته

const string = '      Hello World       ';

const result = string.split(' ').join('');

console.log(result);

 

 

بررسی داده Undefined یا Null 

// program to check if a variable is undefined or null
function checkVariable(variable) {
    if(variable == null) {
        console.log('The variable is undefined or null');
    }
    else {
       console.log('The variable is neither undefined nor null');
    }
}
let newVariable;
checkVariable(5);
checkVariable('hello');
checkVariable(null);
checkVariable(newVariable);

خروجی//
The variable is neither undefined nor null
The variable is neither undefined nor null
The variable is undefined or null
The variable is undefined or null

 

برنامه ای برای ایجاد تایمر شمارش معکوس

// time to countdown from (in milliseconds)
let countDownDate = new Date().getTime() + 24 * 60 * 60 * 1000;
// countdown timer
let x = setInterval(function() {

    // get today's date and time in milliseconds
    let now = new Date().getTime();

    // find the interval between now and the countdown time
    let timeLeft = countDownDate - now;
    // time calculations for days, hours, minutes and seconds
    const days = Math.floor( timeLeft/(1000*60*60*24) );
    const hours = Math.floor( (timeLeft/(1000*60*60)) % 24 );
    const minutes = Math.floor( (timeLeft/1000/60) % 60 );
    const seconds = Math.floor( (timeLeft/1000) % 60 );

    // display the result in the element with id="demo"
    console.log(days + "d " + hours + "h " + minutes + "m " + seconds + "s ");

    // clearing countdown when complete
    if (timeLeft < 0) {
        clearInterval(x);
        console.log('CountDown Finished');
    }
    }, 2000);

 

بررسی اینکه آیا یک شی یک آرایه است یا خیر

// program to check if an object is an array

function checkObject(arr) {

    // check if arr is array
    const result = Array.isArray(arr);

    if(result) {
        console.log(`[${arr}] is an array.`);
    }
    else {
        console.log(`${arr} is not an array.`);
    }

}

const array = [1, 2, 3];

// call the function
checkObject(array);
نویسنده

ملیکا ریحانی

تاریخ نگارش
23 مرداد 1402
8 مقاله این نویسنده