"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > ES3 नई विशेषताएं: आधुनिक जावास्क्रिप्ट की नई विशेषताएं

ES3 नई विशेषताएं: आधुनिक जावास्क्रिप्ट की नई विशेषताएं

2025-05-02 पर पोस्ट किया गया
ब्राउज़ करें:964

] ES2023, नवीनतम अपडेट, नए टूल के साथ पैक किया गया है जो बढ़ाता है कि हम कैसे लिखते हैं, पढ़ते हैं और कोड बनाए रखते हैं। चलो कुछ स्टैंडआउट सुविधाओं में गोता लगाएँ जिन्हें आप अपनी परियोजनाओं में उपयोग करना शुरू करना चाहते हैं।

Modern JavaScript Features: What’s New in ES3 1।

सरण

क्या आपको कभी भी अंत से शुरू होने वाले सरणी में एक आइटम खोजने की आवश्यकता है? ES2023 फाइंडलेस्ट और फाइंडलास्टिंडेक्स का परिचय देता है, जो बस ऐसा करता है।

FindLast: यह विधि एक सरणी में अंतिम तत्व पाता है जो एक निर्दिष्ट स्थिति को पूरा करता है।

const संख्या = [१, २, ३, ४, ५]; const lasteven = numbers.findlast (num => num % 2 === 0); // 4 // अंतिम उपयोगकर्ता का पता लगाएं जो बड़े सरणी में 18 साल का है const उपयोगकर्ता = [/ * 10000 उपयोगकर्ताओं के साथ सरणी */]; users.findlast (उपयोगकर्ता => user.age === 18);
  • FindLastIndex: यह विधि उस अंतिम तत्व का सूचकांक लौटाती है।
  const numbers = [1, 2, 3, 4, 5];
  const lastEven = numbers.findLast(num => num % 2 === 0); // 4

  // Find last user who is 18 years old in large array
  const users = [/* array with 10000 users */]; 
  users.findLast(user => user.age === 18);
]
    2।
  • हैशबैंग्स (#!) जावास्क्रिप्ट फ़ाइलों में
  const lastEvenIndex = numbers.findLastIndex(num => num % 2 === 0); // 3

#!/usr/bin/env नोड कंसोल.लॉग ("हैलो, वर्ल्ड!");

] 3। प्रतीक के रूप में कमजोर कुंजियाँ

]

] const sym = प्रतीक ('कुंजी'); Wm.set (Sym, 'वैल्यू'); कंसोल.लॉग (wm.get (sym)); // 'कीमत' // छिपे हुए गेम डेटा को संग्रहीत करना जो खिलाड़ी आसानी से एक्सेस नहीं कर सकते हैं, जैसे कि सीक्रेट अनलॉक कोड: कॉन्स्ट सीक्रेटकोड = प्रतीक ('वीसी-चीट-कोड'); const gamedata = new Weakap (); gamedata.set (SecretCode, 'पैंजर-एस्पिरीन-बिगबैंग-सटीक-सटीकता');
]

4।
#!/usr/bin/env node

console.log("Hello, world!");

]

समूह: यह विधि आपके सरणी को एक ऑब्जेक्ट में व्यवस्थित करती है, आपके द्वारा प्रदान किए गए फ़ंक्शन द्वारा निर्धारित कुंजियों के साथ और प्रत्येक कुंजी से मेल खाने वाले तत्वों के सरणियों के रूप में मान।

const जानवरों = [ {प्रकार: 'स्तनपायी', नाम: 'कुत्ता'}, {प्रकार: 'पक्षी', नाम: 'गौरैया'}, {प्रकार: 'स्तनपायी', नाम: 'बिल्ली'}, ]; const समूहित = vils.group (({प्रकार}) => प्रकार); कंसोल.लॉग (समूहीकृत); // { // स्तनपायी: [{प्रकार: 'स्तनपायी', नाम: 'कुत्ता'}, {प्रकार: 'स्तनपायी', नाम: 'बिल्ली'}], // पक्षी: [{प्रकार: 'पक्षी', नाम: 'गौरैया'}] //}

]
5।

] सॉर्ट के विपरीत, जो मूल सरणी को बदल देता है, tosorted एक नया क्रमबद्ध सरणी लौटाता है और toreversed एक नया उलटा सरणी देता है, मूल अछूता छोड़ देता है।
const wm = new WeakMap();
const sym = Symbol('key');
wm.set(sym, 'value');

console.log(wm.get(sym)); // 'value'

// Storing hidden game data that players can't easily access, such as secret unlock codes:
const secretCode = Symbol('vc-cheat-code');
const gameData = new WeakMap();
gameData.set(secretCode, 'PANZER-ASPIRINE-BIGBANG-PRECIOUSPROTECTION'); 

const arr = [3, 1, 4, 1, 5]; const sortedarr = arr.tosorted (); कंसोल.लॉग (सॉर्टेडर); // [1, 1, 3, 4, 5] कंसोल.लॉग (गिरफ्तारी); // [3, 1, 4, 1, 5] Data = [/ * महत्वपूर्ण डेटा जिसे संशोधित नहीं किया जाना चाहिए */]; reverseddata = data.toreversed () को दें; // सुरक्षित रूप से उल्टा

]

6। ]

const संख्या = [१०, २०, ३०, ४०]; const newnumbers = numbers.with (2, 25); // [10, 20, 25, 40]

]

7।
    प्रावधान।
  • ] यह नई विधि आपको इसके संकल्प और एक बार में कार्यों को अस्वीकार करने के साथ एक वादा बनाने की सुविधा देती है।
] SetTimeOut () => संकल्प ("किया"), 1000); PROMISE.THEN (कंसोल.लॉग); // "हो गया"
  const animals = [
    { type: 'mammal', name: 'dog' },
    { type: 'bird', name: 'sparrow' },
    { type: 'mammal', name: 'cat' },
  ];

  const grouped = animals.group(({ type }) => type);
  console.log(grouped);
  // {
  //   mammal: [{ type: 'mammal', name: 'dog' }, { type: 'mammal', name: 'cat' }],
  //   bird: [{ type: 'bird', name: 'sparrow' }]
  // }
ES2023 के लिए ब्राउज़र समर्थन

]

फ़ायरफ़ॉक्स, क्रोम और एज कुछ सुविधाओं का समर्थन करते हैं सफारी इनमें से किसी भी सुविधा का समर्थन नहीं करता है।

node.js

const arr = [3, 1, 4, 1, 5];
const sortedArr = arr.toSorted();
console.log(sortedArr); // [1, 1, 3, 4, 5]
console.log(arr); // [3, 1, 4, 1, 5]

let data = [/* important data that shouldn't be modified */];
let reversedData = data.toReversed(); // Safely reverse
] ] यह भविष्य के अपडेट में अधिक ES2023 सुविधाओं को जोड़ने की उम्मीद है।

ट्रांसपिलर:
अब नई ES2023 सुविधाओं का उपयोग करने के लिए, डेवलपर्स ES2023 कोड को एक पुराने संस्करण में बदल सकते हैं जो अधिक ब्राउज़र समझते हैं, बैबेल जैसे ट्रांसपिलर नामक उपकरणों का उपयोग करते हुए। इस तरह, आप नए सामान का उपयोग करना शुरू कर सकते हैं, भले ही ब्राउज़र इसके लिए तैयार न हों।

const numbers = [10, 20, 30, 40];
const newNumbers = numbers.with(2, 25); // [10, 20, 25, 40]

निष्कर्ष

] बढ़ाया सरणी तरीकों से लेकर बेहतर वादा करने के लिए, ये अपडेट आपके कोड क्लीनर और अधिक कुशल बनाने के बारे में हैं। जैसे-जैसे जावास्क्रिप्ट बढ़ता जा रहा है और विकसित होता है, इन परिवर्तनों के साथ अप-टू-डेट रहना सुनिश्चित करता है कि आप हमेशा भाषा से सबसे अधिक लाभ उठाते हैं।

संदर्भ:

TC39 प्रस्ताव

ड्राफ्ट ECMA-262
const wm = new WeakMap();
const sym = Symbol('key');
wm.set(sym, 'value');

console.log(wm.get(sym)); // 'value'

// Storing hidden game data that players can't easily access, such as secret unlock codes:
const secretCode = Symbol('vc-cheat-code');
const gameData = new WeakMap();
gameData.set(secretCode, 'PANZER-ASPIRINE-BIGBANG-PRECIOUSPROTECTION'); 
mdn

विज्ञप्ति वक्तव्य इस लेख को पुन: प्रस्तुत किया गया है: https://dev.to/manjushsh/modern-javascript-features-whats-new-new-new-ne2023-4i7d?1 यदि कोई उल्लंघन है, तो इसे हटाने के लिए [email protected] पर संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3