ای سی ایم اے اس 2017

نقشه‌گذاری نام‌گذاری JavaScript از ES1، ES2، ES3، ES5 و ES6 آغاز شده است.

اما ECMAScript 2016 و 2017 به ES7 و ES8 معروف نشده‌اند.

از سال 2016 به بعد، نسخه‌های جدید بر اساس سال نامگذاری شده‌اند (ECMAScript 2016/2017/2018).

ویژگی‌های جدید ECMAScript 2017

این فصل جدیدترین ویژگی‌های ECMAScript 2017 را معرفی می‌کند:

  • پر کردن رشته‌ها در JavaScript
  • Object.entries در JavaScript
  • Object.values در JavaScript
  • توابع غیر همزمان JavaScript
  • مشترکات حافظه JavaScript

پر کردن رشته‌ها در JavaScript

ECMAScript 2017 دو روش جدید برای رشته‌ها اضافه کرده است:padStart و padEnd، تا بتوان در ابتدای و انتهای رشته پر کرد.

مثال

let str = "5";
str = str.padStart(4,0);
// نتیجه: 0005

خود کا تجربہ کریں

مثال

let str = "5";
str = str.padEnd(4,0);
// نتیجه: 5000

خود کا تجربہ کریں

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

فایرفاکس و سافاری اولین گروهی از پشتیبانی کنندگان از پر کردن رشته‌های جاوااسکریپت هستند:

کروم آئی ای فائر فاکس سافری اورپا
کروم 57 ایج 15 فایرفاکس 48 سافاری 10 اپرا 44
2017 کا مارچ 2017 کا اپریل 2016 سال 8 ماه 2016 سال 9 ماه 2017 کا مارچ

جفت‌های کلید/مقدار جاوااسکریپت

ECMAScript 2017 ویژگی‌های جدیدی به ابرگذارش اضافه کرده است Object.entries روش.

Object.entries() روشی است که آرایه‌ای از جفت‌های کلید/مقدار از یک ابرگذارش برمی‌گرداند:

مثال

const person = {
  firstName : ":Bill",
  lastName : ":Gates",
  age : 50,
  eyeColor : ":blue"
};
document.getElementById("demo").innerHTML = Object.entries(person);

خود کا تجربہ کریں

Object.entries() به سادگی استفاده از ابرگذارش در چرخه‌ها را ممکن می‌کند:

مثال

const fruits = {Bananas:300, Oranges:200, Apples:500};
let text = "";
for (let [fruit, value] of Object.entries(fruits)) {
text += fruit + ": " + value + "
";
}

خود کا تجربہ کریں

Object.entries() به سادگی تبدیل یک ابرگذارش به نقشه را ممکن می‌کند:

مثال

const fruits = {Bananas:300, Oranges:200, Apples:500};
const myMap = new Map(Object.entries(fruits));

خود کا تجربہ کریں

کروم و فایرفاکس اولین گروهی از پشتیبانی کنندگان هستند Object.entries گرداننده:

کروم آئی ای فائر فاکس سافری اورپا
کروم 47 ایج 14 فایرفاکس 47 سافاری 10.1 اپرا 41
2016 سال 6 ماه 2016 سال 8 ماه 2016 سال 6 ماه 2017 کا مارچ 2016 کا دسمبر

مقادیر جاوااسکریپت

Object.values مانند Object.entries، اما به یک آرایه یک بعدی از مقادیر اهداف باز می‌گردد:

مثال

const person = {
  firstName : ":Bill",
  lastName : ":Gates",
  age : 50,
  eyeColor : ":blue"
};
document.getElementById("demo").innerHTML = Object.values(person);

خود کا تجربہ کریں

فایرفاکس و کروم اولین گروهی از پشتیبانی کنندگان هستند Object.values گرداننده:

کروم آئی ای فائر فاکس سافری اورپا
کروم 54 ایج 14 فایرفاکس 47 سافاری 10.1 اپرا 41
2016 کا دسمبر 2016 سال 8 ماه 2016 سال 6 ماه 2017 کا مارچ 2016 کا دسمبر

جسٹا اسکریپٹ ایسنچ فانکشن

انتظار تاخیر

ایسکین فونکشن مائی ڈسپلے() {
  لیٹ مائی پرمنس = نیو پرمنس(فونکشن(مائی ریزیل، مائی ریجکت) {
    ایسٹائپائید(فونکشن() { مائی ریزیل("می لا یو !!"); }, 3000);
  });
  ڈاکومن اگیدار("ڈی مو").اینایلر ہینڈ(ایچیئوایس می پرمس);
}
مائی ڈسپلے();

خود کا تجربہ کریں

فائر فاکس اور کروم پہلے سے آگلے آسین جسٹا اسکریپٹ فانکشن کا سپورٹ کرنے والے براوزر ہیں:

کروم آئی ای فائر فاکس سافری اورپا
کروم 55 ایج 15 فائر فاکس 52 سافری 11 اورپا 42
2016 کا دسمبر 2017 کا اپریل 2017 کا مارچ 2017 کا ستمبر 2016 کا دسمبر