جسٹا اس6

ECMAScript 6 چیست؟

ECMAScript 6 نیز به ES6 و ECMAScript 2015 معروف است.

برخی آن را JavaScript 6 می‌نامند.

این فصل برخی از ویژگی‌های جدید ES6 را معرفی می‌کند.

  • JavaScript let
  • JavaScript const
  • قدرت (**)
  • مقادیر پیش‌فرض
  • Array.find()
  • Array.findIndex()

پشتیبانی مرورگرها از ES6 (ECMAScript 2015)

Safari 10 و Edge 14 اولین مرورگرهایی هستند که ES6 را به طور کامل پشتیبانی می‌کنند:

Chrome 58 Edge 14 Firefox 54 Safari 10 Opera 55
Jan 2017 Aug 2016 Mar 2017 Jul 2016 Aug 2018

JavaScript let

دستور let اجازه می‌دهد که متغیرها را با حوزه محدود به بلوک (block scope) اعلام کنید.

مثال

var x = 10;
// در اینجا x برابر 10 است
{ 
  let x = 2;
  // در اینجا x برابر 2 است
}
// در اینجا x برابر 10 است

خودتان امتحان کنید

JavaScript const

کنسٹ این دستور اجازه می‌دهد که متغیرهای مستقل (متغیرهایی با مقادیر مستقل در JavaScript) را اعلام کنید.

مستقل‌ها مانند let متغیرها، اما نمی‌توانند مقدار خود را تغییر دهند.

مثال

var x = 10;
// در اینجا x برابر 10 است
{ 
  const x = 2;
  // در اینجا x برابر 2 است
}
// در اینجا x برابر 10 است

خودتان امتحان کنید

لطفاً در JavaScript Let / Const بیشتر بخوانید در مورد let و کنسٹ محتوای.

محاسبه قدرت

پس از عملیات بردار.**)(اولین عدد را به توان دومین عدد بالا می‌برد.

مثال

var x = 5;
var z = x ** 2;          // نتیجه 25 خواهد بود

خودتان امتحان کنید

x ** y نتیجه با Math.pow(x,y) مشابه:

مثال

var x = 5;
var z = Math.pow(x,2);   // نتیجه 25 خواهد بود

خودتان امتحان کنید

مقادیر پیش‌فرض

ES6 اجازه داده می‌شود که پارامترهای تابع دارای مقادیر پیش‌فرض باشند.

مثال

function myFunction(x, y = 10) {
  // اگر y ارسال نشده باشد یا undefined باشد، y برابر 10 خواهد بود
  return x + y;
}
myFunction(5); // برگشت 15 خواهد داد

خودتان امتحان کنید

Array.find()

find() مетод نتیجه می‌گیرد که مقدار اولین عنصر آرایه‌ای که از طریق تابع تستی عبور می‌کند.

این مثال دنبال (برگشت) اولین عنصر (مقدار) بزرگتر از 18 می‌گردد:

مثال

var numbers = [4, 9, 16, 25, 29];
var first = numbers.find(myFunction);
function myFunction(value, index, array) {
  return value > 18;
}

خودتان امتحان کنید

لطفاً اس فونکشن کو 3 پارامترز میں قبول کیا جاتا ہے:

  • آئیٹم کا مارک
  • آئیٹم انڈیکس
  • ایکلی دودھار

Array.findIndex()

findIndex() مетод نتیجه می‌گیرد که شماره ترتیب اولین عنصر آرایه‌ای که از طریق تابع تستی عبور می‌کند.

یہ مثال بڑتر 18 کا پہلا آئیٹم کا انڈیکس طے کرتا ہے:

مثال

var numbers = [4, 9, 16, 25, 29];
var first = numbers.findIndex(myFunction);
function myFunction(value, index, array) {
  return value > 18;
}

خودتان امتحان کنید

لطفاً اس فونکشن کو 3 پارامترز میں قبول کیا جاتا ہے:

  • آئیٹم کا مارک
  • آئیٹم انڈیکس
  • ایکلی دودھار

نئی عددی اشارتیات

ES6 نمبر اورکٹ میں درج کئے گئے اشارتیات:

  • EPSILON
  • MIN_SAFE_INTEGER
  • MAX_SAFE_INTEGER

مثال

var x = Number.EPSILON;

خودتان امتحان کنید

مثال

var x = Number.MIN_SAFE_INTEGER;

خودتان امتحان کنید

مثال

var x = Number.MAX_SAFE_INTEGER;

خودتان امتحان کنید

نئی عددی مہارتیں

ES6 نمبر اورکٹ کے لئے 2 نئی مہارتیں اضافہ کی:

  • Number.isInteger()
  • Number.isSafeInteger()

Number.isInteger() مہارت

اگر پارامتر انٹیجر ہے تو Number.isInteger() مетод بازگشت true.

مثال

Number.isInteger(10);        // واپس میٹرایم
Number.isInteger(10.5);      // واپس میٹرایم

خودتان امتحان کنید

Number.isSafeInteger() مہارت

سیکورٹ انٹیجر دوبل پرائس کی دقت سے نمائش کے انٹیجر ہیں.

اگر پارامتر سیکورٹ انٹیجر ہے تو Number.isSafeInteger() مетод بازگشت true.

مثال

Number.isSafeInteger(10);    // واپس میٹرایم
Number.isSafeInteger(12345678901234567890);  // واپس میٹرایم

خودتان امتحان کنید

سیکورٹ انٹیجر سائز -(253 - 1) سے +(253 - 1) تک کی تمام انٹیجر ہیں.

یہ سیکورٹ ہے: 9007199254740991. یہ نہیں سیکورٹ ہے: 9007199254740992.

نئی عالمی مہارتیں

ES6 2 نئی عالمی عددی مہارتیں اضافہ کی:

  • isFinite()
  • isNaN()

isFinite() مہارت

اگر پارامتر: Infinity یا NaN، پس عالمی isFinite() مہارت واپس میٹرایم

غیرممکن ہونے کا مواقع واپس میٹرایم:

مثال

isFinite(10/0);       // واپس میٹرایم
isFinite(10/1);       // واپس میٹرایم

خودتان امتحان کنید

isNaN() مہارت

اگر پارامتر NaN، پس عالمی isNaN() مетод بازگشت true. در غیر این صورت بازگشت false:

مثال

isNaN("Hello");       // بازگشت true

خودتان امتحان کنید

توابع فلاچیواری (Arrow Function)

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

شما نیازی به توابع کلمات کلیدی،بازگشت کلمات کلیدی وقوس‌ها.

مثال

// ES5
ور ایکس = function(ایکس، ی) {
   بازگشت ایکس * ی;
}
// ES6
کنسٹ ایکس = (ایکس، ی) => ایکس * ی;

خودتان امتحان کنید

توابع فلاچیواری فاقد این.روش‌های شیء.

توابع فلاچیواری نشناخته شده‌اند. آنها باید در زمان استفادهقبلاستفاده کنید.

برای تعریف کنسٹ بجای استفاده از ور بسیار امن‌تر است، زیرا همیشه تابع اکسیپریشن‌ها مقدار ثابت هستند.

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

مثال

کنسٹ ایکس = (ایکس، ی) => { بازگشت ایکس * ی };

خودتان امتحان کنید