जावास्क्रिप्ट में ऐरे में रूपांतरण का अनुकूलन
हमेशा स्ट्रिंग को ऐरे में विभाजित करने की आवश्यकता नहीं होती ताकि उसके साथ कुछ किया जा सके। आइए एक उदाहरण देखें। मान लीजिए कि हमारे पास निम्नलिखित कोड है:
let num = 123456789;
let arr = String(num).split('');
let sum = 0;
for (let elem of arr) {
sum += +elem;
}
console.log(sum);
यहाँ ऐरे में विभाजित करना खराब क्यों है? क्योंकि सबसे पहले, ऐरे में विभाजित करने पर प्रोसेसर संसाधन खर्च होते हैं, दूसरे, परिणामी ऐरे रैम में स्थान लेगा (और यह स्थान उस स्थान से अधिक होगा, जो स्वयं स्ट्रिंग लेती है)।
आखिरकार, for-of का उपयोग करके
न केवल ऐरे,
बल्कि स्ट्रिंग्स को भी पुनरावृत्त किया जा सकता है:
let num = 123456789;
let str = String(num);
let sum = 0;
for (let char of str) {
sum += +char;
}
console.log(sum);
निम्नलिखित कोड इनपुट में दर्ज संख्या के अंकों का योग खोजता है। अनुकूलन करें:
<input>
let input = document.querySelector('input');
input.addEventListener('blur', function() {
let digits = input.value.split('');
let sum = 0;
for (let digit of digits) {
sum += +digit;
}
console.log(sum);
});
निम्नलिखित कोड स्ट्रिंग में अक्षरों की संख्या गिनता है। अनुकूलन करें:
let str = 'abcaab';
let arr = str.split('');
let i = 0;
for (let elem of arr) {
if (elem == 'a') {
i++;
}
}
console.log(i);
निम्नलिखित कोड स्ट्रिंग में एक वर्ण की उपस्थिति की जाँच करता है। अनुकूलन करें:
let str = 'abcaab';
let arr = str.split('');
console.log(arr.includes('a'));