JavaScript ES12(ECMAScript 2021) Updates : New Features of JS ES12

Other Blogs

Image could not load

JS ES12 Updates

JavaScript ECMAScript 2021 Updates

JavaScript के ES12 version, जो ECMAScript 2021 के नाम से जाना जाता है, ने programming में कुछ काफी important और convenient features introduce किये हैं।

इस blog में हम ES12 के सभी major updates को discuss करेंगे और देखेंगे कैसे यह new features JavaScript को और भी powerful और developer-friendly बनाते हैं।

Table of Contents
  • Logical Assignment Operators

  • Numeric Separators

  • String.prototype.replaceAll()

  • Promise.any()

  • WeakRefs

  • FinalizationRegistry

  • Conclusion

1. JS Logical Assignment Operators

JavaScript ES12 में logical operators (&&=, ||=, ??=) को और enhance किया गया है जिससे assignment operations को shortcut के through लिखा जा सके।

यह new operators logical checks के साथ value को assign करते हैं।

Syntax

x &&= y; // agar x truthy hai, to y assign hoga
x ||= y; // agar x falsy hai, to y assign hoga
x ??= y; // agar x null ya undefined hai, to y assign hoga

Example

let a = true; let b = false; a &&= b; // a will be false because b is false console.log(a); // Output: false let x = null; x ??= 'Default Value'; console.log(x); // Output: 'Default Value'

यह logical operators काफी useful हैं जब आपको conditional assignment को short और efficient तरीके से लिखना हो।

2. JS Numeric Separators

Bade numbers को read करना कभी-कभी मुश्किल हो जाता है। ES12 में numeric separators (_) का feature introduce किया गया है जिससे large numbers को easily readable बनाया जा सकता है।

Example

let amount = 5_000_000_000; console.log(amount); // Output: 5000000000

इससे bade numbers को समझना और काफी readable बना दिया गया है without affecting the actual value.

3. JS String.replaceAll()

अब तक replace() method सिर्फ first occurrence को replace करता था, लेकिन ES12 में replaceAll() method introduce किया गया है जो string के अंदर हर occurrence को replace करता है।

Example

let text = 'JavaScript is great, JavaScript is popular'; let updatedText = text.replaceAll('JavaScript', 'JS'); console.log(updatedText); // Output: 'JS is great, JS is popular'

यह method repetitive text को replace करने में काफी handy है।

4. JS Promise.any()

Promise.any() method काम करता है किसी भी first fulfilled promise को resolve करने के लिए। अगर सभी promises reject हो जाते हैं, तो यह AggregateError throw करता है।

Example

let p1 = Promise.reject('Error 1'); let p2 = Promise.resolve('Success'); let p3 = Promise.reject('Error 2'); Promise.any([p1, p2, p3]) .then(result => console.log(result)); // Output: 'Success'

Promise.any() asynchronous operations के लिए helpful है जिसमे आपको first successful result चाहिए।

5. JS WeakRef

WeakRef एक नया feature है जो weak references create करता है objects के लिए।

Weak references का मतलब है कि garbage collector इनको delete कर सकता है अगर memory reclaim करनी हो। यह feature memory management और optimization के लिए काफी useful है।

Example

let obj = { name: 'John' }; let weakRef = new WeakRef(obj); console.log(weakRef.deref()); // Output: { name: 'John' }

WeakRef काम आता है जब आपको memory leakage avoid करनी हो और object को unnecessary hold नहीं करना हो।

6. JS FinalizationRegistry

FinalizationRegistry का use object को garbage collect hone के बाद clean-up logic को execute करने के लिए किया जाता है। इससे memory को efficiently manage करने में help मिलती है।

Example

let registry = new FinalizationRegistry((heldValue) => { console.log(`Clean up for ${heldValue}`); }); let obj = { name: 'John' }; registry.register(obj, 'Object-1');

जब obj garbage collect हो जाता है, 'Object-1' को clean-up के लिए use किया जाता है।

यह feature advanced memory management और optimization के लिए helpful होता है।

Conclusion

JavaScript ES12 (ECMAScript 2021) ने कुछ powerful और modern features को introduce किया है जो आज के dynamic JavaScript applications को build करने के लिए काफी जरूरी हैं।

चाहे वो replaceAll() हो, Promise.any() हो या WeakRef, हर feature का अपना एक unique contribution है coding experience को और enhance करने में।

I hope you liked it :)

See you later ?

Recent Blogs

Loading ...

Hey ! I'm Rahul founder of learnhindituts.com. Working in IT industry more than 4.5 years. I love to talk about programming as well as writing technical tutorials and blogs that can help to others .... keep learning :)

Get connected with me - LinkedIn Twitter Instagram Facebook

Your Thought ?

Please wait . . .

    0 Comment(s) found !