ওয়েব জগতে জাভাস্ক্রিপ্টের আধিপত্য রয়েছে – এবং এই ভাষার মূল ভিত্তি ইসিএমএস্ক্রিপ্ট (ECMAScript) ক্রমশ পরিপক্ক হচ্ছে। বছরের মাঝামাঝি সময়ে প্রত্যাশিত নতুন স্পেসিফিকেশন (ES6 বা JS2) এমন অনেক নতুনত্ব নিয়ে আসছে যা ইতোমধ্যেই পরীক্ষা করা সম্ভব। বর্তমানে ফায়ারফক্স সবচেয়ে ভালো সাপোর্ট দিচ্ছে, তবে গুগল ট্রেসারের (Google Traceur) মতো ট্রান্সপাইলারের মাধ্যমে পলিফিল তৈরি করাও সম্ভব। নিচে ES6-এর নতুন ফিচারগুলোর একটি সংক্ষিপ্ত বিবরণ দেওয়া হলো।
নতুন কীওয়ার্ড var এর চেয়ে অনেক ভালো কাজ করে : স্কোপিং এখন অন্যান্য ভাষার মতোই আচরণ করে (C/C++, Java), যার কারণে এখন যদি ব্লকেরও নিজস্ব সুযোগ থাকে। উত্তোলন, অর্থাত্ পরিবর্তনশীল ঘোষণার অগ্রাধিকার (মান অ্যাসাইনমেন্ট নয়) সংশ্লিষ্ট সুযোগের মধ্যেও মেরামত করা হবে:
console.log(x); var x = 'foo'; // undefined console.log(y); let y = 'bar'; // not initialized
অন্যান্য উদ্ভাবনের সংখ্যা বড়: ধ্রুবক (const), ফাংশনের জন্য ডিফল্ট মান (ফাংশন pow(a,b=2) { return Math.pow(a,b); }), ফাংশনের জন্য একটি নতুন স্বরলিপি (let pow = (a,b=2) => Math.pow(a,b);), বিভিন্ন ধরনের নতুন ফাংশন (sext(repeat), find(Index), ধারণ (repeat)), খুঁজুন এর জন্য নতুন লুপ নির্মাণ।
এছাড়াও উল্লেখ যোগ্য হল নতুন ডেটা টাইপ সেট, ম্যাপ, প্রক্সি এবং সিম্বল, আমদানির সাথে জাভাস্ক্রিপ্ট ফাইল (অন্যান্য অংশের) আমদানি করার ক্ষমতা এবং ক্লাস এবং উত্তরাধিকারের জন্য একটি নতুন স্বজ্ঞাত সিনট্যাক্স। তবে প্রায়শই ছোট কিন্তু দীর্ঘ-প্রতীক্ষিত জিনিসও থাকে যেমন স্ট্রিং লিটারেলে লাইন ব্রেক হওয়ার সম্ভাবনা (বিশেষ উদ্ধৃতি চিহ্নগুলি নোট করুন):
`foo bar`
জাভাস্ক্রিপ্ট অনেক দিন ধরেই শুধু ছোটখাটো ওয়েবসাইট তৈরির একটি টুলের চেয়ে অনেক বেশি কিছু – এটি দিয়ে শক্তিশালী ও উচ্চ-পারফরম্যান্সের ওয়েব অ্যাপ্লিকেশন তৈরি করা হয়, যা ডেস্কটপ অ্যাপ্লিকেশনগুলোর মতোই চমৎকার। এর প্রচুর সহায়ক নতুন ফিচার এবং ES6-এর বিদ্যমান সমর্থনের কারণে প্রোগ্রামিং এখন দ্বিগুণ আনন্দদায়ক।
নতুন ধ্রুবক সংখ্যাটির সাহায্যে যারা সর্বদা দুটি সংখ্যার সমতা পরীক্ষা করতে চাননি PS
let cmp = (a,b) => Math.abs(a-b) < Number.EPSILON;