ECMAScript 2017

JavaScript ਦੀਆਂ ਨਾਮਕਰਣ ਸ਼ਕਲਾਵਾਂ ES1, ES2, ES3, ES5 ਅਤੇ ES6 ਤੋਂ ਸ਼ੁਰੂ ਹੋਈਆਂ ਹਨ。

ਪਰ ਐਕਮਾਸਕ੍ਰਿਪਟ 2016 ਅਤੇ 2017 ਨੂੰ ES7 ਅਤੇ ES8 ਨਹੀਂ ਕਿਹਾ ਗਿਆ ਹੈ。

2016 ਤੋਂ ਲੈ ਕੇ ਨਵੀਂ ਸੰਸਕਰਣ ਸਾਲ ਦੇ ਨਾਮ ਨਾਲ ਪ੍ਰਕਾਸ਼ਿਤ ਹੋਈਆਂ ਹਨ (ECMAScript 2016/2017/2018)。

ECMAScript 2017 ਵਿੱਚ ਨਵੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ

ਇਸ ਪ੍ਰਕਾਰ ਇਸ ਚਾਪ ਵਿੱਚ ECMAScript 2017 ਦੀਆਂ ਨਵੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਪ੍ਰਸਤੁਤੀ ਕੀਤੀ ਜਾਵੇਗੀ:

  • JavaScript ਸਟਰਿੰਗ ਪੂਰਣਤਾ
  • JavaScript Object.entries
  • JavaScript Object.values
  • 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 ਦੇ ਅਗਸਤ 2016 ਦੇ ਸਤੰਬਰ مارس 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 ਦੇ ਜੂਨ 2016 ਦੇ ਅਗਸਤ 2016 ਦੇ ਜੂਨ مارس 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 ਦੇ ਅਗਸਤ 2016 ਦੇ ਜੂਨ مارس 2017 اکتبر 2016

توابع Async JavaScript

تأخیر در انتظار

async function myDisplay() {
  let myPromise = new Promise(function(myResolve, myReject) {
    setTimeout(function() { myResolve("I love You !!"); }, 3000);
  });
  document.getElementById("demo").innerHTML = await myPromise;
}
myDisplay();

آزمایش کنید

فایرفاکس و کروم اولین مرورگرهایی هستند که از توابع JavaScript آسنکری همگام پشتیبانی می‌کنند:

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