ECMAScript 2017
ECMAScript 2017 (এটি ES8 নামেও পরিচিত) হল জাভাস্ক্রিপ্ট ভাষার 8ম সংস্করণ। এটি 2017 সালে প্রকাশিত হয়েছিল এবং অ্যাসিঙ্ক/অপেক্ষা, স্ট্রিং প্যাডিং এবং অবজেক্ট নতুন পদ্ধতি সহ অনেকগুলি গুরুত্বপূর্ণ বৈশিষ্ট্য চালু করেছে।
এই টিউটোরিয়ালে, আপনি ES2017-এ প্রবর্তিত সমস্ত গুরুত্বপূর্ণ বৈশিষ্ট্যগুলি শিখবেন।
জাভাস্ক্রিপ্ট 2017-এ নতুন বৈশিষ্ট্য
| বৈশিষ্ট্য | ব্যাখ্যা |
|---|---|
| String padStart() | একটি স্ট্রিং শুরু প্যাডিং |
| String padEnd() | একটি স্ট্রিং শেষ প্যাডিং |
| Object entries() | একটি বস্তুর কী/মান জোড়ার একটি অ্যারে প্রদান করে |
| Object values() | একটি বস্তুর জন্য মানগুলির একটি বিন্যাস প্রদান করে |
| async and await | প্রতিশ্রুতি পরিচালনাকে সহজ করে |
| Trailing Commas | অনুগামী কমাগুলিকে অনুমতি দেয় যেখানে মানগুলির একটি কমা দ্বারা পৃথক করা তালিকা গ্রহণ করা হয়৷ |
| getOwnProperty Descriptors | একটি বস্তুর সমস্ত সম্পত্তি বর্ণনাকারী সমন্বিত একটি বস্তু প্রদান করে |
ব্রাউজার সমর্থন
জাভাস্ক্রিপ্ট 2017 সেপ্টেম্বর 2017 পর্যন্ত সমস্ত আধুনিক ব্রাউজারে সমর্থিত:
| Chrome | Edge | Firefox | Safari | Opera |
|---|---|---|---|---|
| 58 | 15 | 52 | 11 | 45 |
| এপ্রিল 2017 | এপ্রিল 2017 | মার্চ 2017 | সেপ্টেম্বর 2017 | মে 2017 |
JavaScript String Padding
ECMAScript 2017 জাভাস্ক্রিপ্টে দুটি স্ট্রিং পদ্ধতি যুক্ত করেছে: প্যাডস্টার্ট() এবং প্যাডএন্ড() একটি স্ট্রিংয়ের শুরুতে এবং শেষে প্যাডিং সমর্থন করতে।
উদাহরণ
let text = "5";
text = text.padStart(4,0);
let text = "5";
text = text.padEnd(4,0);
আবেদন:
padStart() এবং padEnd() পদ্ধতিগুলি একটি নির্দিষ্ট দৈর্ঘ্যে সংখ্যা বা স্ট্রিংগুলি ফর্ম্যাট করার জন্য দরকারী, বিশেষ করে যখন তারিখ, সময় বা আইডি ফর্ম্যাট করা হয়।
JavaScript Object Entries
ECMAScript 2017 অবজেক্টে Object.entries() পদ্ধতি যুক্ত করেছে।
Object.entries() / :
উদাহরণ
const person = {
firstName : "John",
lastName : "Doe",
age : 50,
eyeColor : "blue"
};
let text = Object.entries(person);
Object.entries() loops :
উদাহরণ
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));
JavaScript Object Values
Object.values() Object.entries() , :
উদাহরণ
const person = {
firstName : "John",
lastName : "Doe",
age : 50,
eyeColor : "blue"
};
let text = Object.values(person);
JavaScript Async Functions
অ্যাসিঙ্ক এবং ওয়েট কীওয়ার্ডগুলি ES2017-এ চালু করা হয়েছিল, যা অ্যাসিঙ্ক্রোনাস কোড লেখা এবং পড়া সহজ করে তোলে৷
Waiting for a Timeout
async function myDisplay() {
let myPromise = new Promise(function(myResolve, myReject) {
setTimeout(function() { myResolve("I love You !!"); }, 3000);
});
document.getElementById("demo").innerHTML = await myPromise;
}
myDisplay();
অ্যাসিঙ্ক/অপেক্ষার সুবিধা:
async/await এর সাথে, আপনি প্রতিশ্রুতি পরিচালনার জন্য .then() এবং .catch() লিঙ্কযুক্ত চেইনগুলি বাদ দিয়ে সিঙ্ক্রোনাস কোডের মতোই অ্যাসিঙ্ক্রোনাস কোড লিখতে পারেন।
JavaScript Trailing Commas
JavaScript যেকোন স্থানে কমা দ্বারা বিভক্ত মানগুলির একটি তালিকা গৃহীত হয় সেখানে ট্রেলিং কমাগুলিকে অনুমতি দেয়৷
অ্যারে এবং অবজেক্ট লিটারেলে, ফাংশন কল, প্যারামিটার, আমদানি এবং রপ্তানি।
উদাহরণ
function myFunc(x,,,) {};
const myArr = [1,2,3,4,,,];
const myObj = {fname: John, age:50,,,};
দ্রষ্টব্য:
ট্রেলিং কমাগুলি সংস্করণ নিয়ন্ত্রণ ব্যবস্থায় পরিবর্তনগুলি ট্র্যাক করা সহজ করে কারণ নতুন উপাদানগুলি যোগ করার সময় আপনাকে আগের লাইনটি পরিবর্তন করতে হবে না।
Object.getOwnPropertyDescriptors() পদ্ধতি
Object.getOwnPropertyDescriptors() descriptors .
উদাহরণ
getOwnPropertyNames() পদ্ধতি একটি বস্তুর বৈশিষ্ট্য সহ একটি অ্যারে প্রদান করে:
const myProp = Object.getOwnPropertyNames(person);
উদাহরণ
getOwnPropertyDescriptors() পদ্ধতি একটি বস্তুর সম্পত্তি বর্ণনা প্রদান করে।
const myProp = Object.getOwnPropertyDescriptors(person);
একটি বৈশিষ্ট্য বর্ণনাকারী একটি বস্তু যা একটি বৈশিষ্ট্যের সমস্ত বৈশিষ্ট্য বর্ণনা করে:
| বৈশিষ্ট্য | ব্যাখ্যা |
|---|---|
| value | বৈশিষ্ট্য মান |
| writable | true যদি অ্যাট্রিবিউটের মান পরিবর্তন করা যায় |
| enumerable | loops এ প্রপার্টি প্রদর্শিত হলে true (for...in, Object.keys())। |
| configurable | true যদি অ্যাট্রিবিউট বর্ণনাকারী পরিবর্তন বা মুছে ফেলা যায় |
| get | সম্পত্তি মান পেতে ফাংশন (অ্যাক্সেসর বৈশিষ্ট্যের জন্য) |
| set | সম্পত্তি মান সেট করার ফাংশন (অ্যাক্সেসর বৈশিষ্ট্যের জন্য) |
Object Cloning
Object.getOwnPropertyDescriptors() getters, setters, :
উদাহরণ
const clone = Object.defineProperties({}, Object.getOwnPropertyDescriptors(person));
ব্যবহারিক প্রয়োগ:
Object.getOwnPropertyDescriptors() , (getters, setters, enumerable, configurable, writable) .
ECMAScript 2017 টিউটোরিয়াল
ES2017-এ শেখা বৈশিষ্ট্যগুলি পরীক্ষা করার জন্য এই টিউটোরিয়ালটি ব্যবহার করে দেখুন।