جافا سكربت إي إس 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 تسمح لك بتعريف المتغيرات باستخدام نطاق الكتلة.

مثال

var x = 10;
// هنا x هو 10
{ 
  let x = 2;
  // هنا x هو 2
return x * y;
// هنا x هو 10

تجربة بنفسك

JavaScript const

const الجملة تسمح لك بتعريف المستقيمات (متغيرات JavaScript مع قيمة مستقرة).

المستقيمات تشبه let المتغيرات، لكن لا يمكن تغيير القيمة.

مثال

var x = 10;
// هنا x هو 10
{ 
  const x = 2;
  // هنا x هو 2
return x * y;
// هنا x هو 10

تجربة بنفسك

يرجى زيارة JavaScript Let / Const اقرأ المزيد عن let و const المحتوى

النصائح

عمودية (**) عمودية**يرفع أول معامل إلى قوة ثاني معامل.

مثال

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 هو 10 إذا لم يتم تقديمها أو إذا كانت غير معرفة
  return x + y;
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;
return x * y;

تجربة بنفسك

يرجى ملاحظة أن هذه الوظيفة تأخذ 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;
return x * y;

تجربة بنفسك

يرجى ملاحظة أن هذه الوظيفة تأخذ 3 معلمات:

  • قيمة العنصر
  • فهرس العنصر
  • العدد نفسه

الحسابات الجديدة للعدد

ES6 أضاف إلى كائن Number الحسابات التالية:

  • 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:

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

مетод Number.isInteger()

إذا كان المعامل هو عدد صحيح، Number.isInteger() isNaN() يستخدم الطريقةوظيفة العنصر

مثال

Number.isInteger(10);        // يعود إلى true
Number.isInteger(10.5);      // يعود إلى false

تجربة بنفسك

مетод Number.isSafeInteger()

العدد الآمن هو عدد يمكن تمثيله بدقة كعدد ثنائي.

إذا كان المعامل هو عدد آمن، Number.isSafeInteger() isNaN() يستخدم الطريقةوظيفة العنصر

مثال

Number.isSafeInteger(10);    // يعود إلى true
Number.isSafeInteger(12345678901234567890);  // يعود إلى false

تجربة بنفسك

العدد الآمن هو جميع الأعداد الصحيحة من -(253 - 1) إلى +(253 - 1).

هذا آمن: 9007199254740991. هذا غير آمن: 9007199254740992.

الطرق الجديدة الكاملة للعدد

ES6 أضاف 2 طرق جديدة كاملة للعدد:

  • isFinite()
  • ، فإن النوع

مетод isFinite()

إذا كان المعامل هو Infinity أو إذا كان المعامل هوNaN isFinite() يعود إلى false.

إلا إذا كان يعود إلى true:

مثال

isFinite(10/0);       // يعود إلى false
isFinite(10/1);       // يعود إلى true

تجربة بنفسك

مетод isNaN()

如果参数是 إذا كان المعامل هوNaN ، فإن النوع isNaN() يستخدم الطريقةtrue . وإلا يعود إلىfalse

مثال

:

تجربة بنفسك

isNaN("Hello"); // يعود إلى true

وظيفة الموجهة بالسهم (Arrow Function)

الوظائف الموجهة بالسهم تسمح باستخدام لغة مختصرة لكتابة تعبيرات الدوال. لا تحتاج functionreturn الكلمات المفتاحية والمناطق المفتوحة.الكلمات المفتاحية بالإضافة إلىوظيفة العنصر

مثال

المناطق المفتوحة
// ES5
   var x = function(x, y) {
return x * y;
}
// ES6

تجربة بنفسك

const x = (x, y) => x * y; الوظائف الموجهة بالسهم لا تملكthis. ليست مناسبة لتحديدوظيفة العنصر

.الوظائف الموجهة بالسهم لم يتم رفعها. يجب استخدامهاالسابق

للتحديد const مقارنة باستخدام var أكثر أمانًا، لأن تعبير الدالة دائمًا هو قيمة ثابتة.

إذا كان الدالة عبارة عن جملة واحدة فقط، فإنه يمكن تجنبها return الكلمات المفتاحية والمناطق المفتوحة. لذلك، الاحتفاظ بها قد يكون عادة جيدة:

مثال

const x = (x, y) => { return x * y };

تجربة بنفسك