Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Javascript

जावास्क्रिप्ट में शब्दों को टाइप करने में लगने वाले समय की गणना करना

<घंटा/>

मान लीजिए कि हमारे पास एक कीवर्ड है, जो पारंपरिक क्वर्टी टाइप की मैपिंग के बजाय, कीज़ को अंग्रेजी वर्णमाला के क्रम के अनुसार मैप करता है, यानी एबीसीडी...

इससे पहले कि हम समस्या में उतरें, हमें निम्नलिखित दो धारणाएँ बनानी होंगी -

  • वर्तमान में हमारी उंगलियों को इंडेक्स 0 पर रखा गया है, यानी कुंजी 'a

  • एक कुंजी से दूसरी कुंजी में जाने में लगने वाला समय उनके सूचकांक का पूर्ण अंतर है, उदाहरण के लिए 'a' से 'k' तक जाने में लगने वाला समय होगा |0 - 10| =10

हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना आवश्यक है जो अंग्रेजी लोअरकेस अक्षरों की एक स्ट्रिंग लेता है और स्ट्रिंग टाइप करने के लिए आवश्यक समय की गणना और रिटर्न देता है।

उदाहरण के लिए -

यदि इनपुट स्ट्रिंग है -

const str = 'dab';

आउटपुट

const output = 7;

क्योंकि जो हलचलें हुईं, वे हैं -

'a' -> 'd' = 3
'd' -> 'a' = 3
'a' -> 'b' = 1

उदाहरण

इसके लिए कोड होगा -

const str = 'dab';
const findTimeTaken = (str = '') => {
   let timeSpent = 0;
   const keyboard = 'abcdefghijklmnopqrstuvwxyz';
   let curr = 'a';
   for(let i = 0; i < str.length; i++){
      const el = str[i];
      const fromIndex = keyboard.indexOf(curr);
      const toIndex = keyboard.indexOf(el);
      const time = Math.abs(fromIndex - toIndex);
      curr = el;
      timeSpent += time;
   };
   return timeSpent;
};
console.log(findTimeTaken(str));

आउटपुट

और कंसोल में आउटपुट होगा -

7

  1. जावास्क्रिप्ट कॉन्स्ट

    जावास्क्रिप्ट कॉन्स्ट घोषणाएं वेरिएबल बनाती हैं जिन्हें किसी अन्य मान पर पुन:असाइन नहीं किया जा सकता है या बाद में पुन:घोषित नहीं किया जा सकता है। इसे ES2015 में पेश किया गया था। जावास्क्रिप्ट कॉन्स्टेबल डिक्लेरेशन के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html> <head> &l

  1. जावास्क्रिप्ट में कास्टिंग टाइप करें।

    टाइप कास्टिंग का अर्थ है एक डेटा प्रकार का दूसरे डेटा प्रकार में स्पष्ट रूप से रूपांतरण। जावास्क्रिप्ट में स्ट्रिंग () का उपयोग करके डेटाटाइप को या तो स्ट्रिंग में बदलने के लिए कुछ सबसे सामान्य तरीके, बूलियन () का उपयोग करके बूलियन में, या नंबर () का उपयोग करके संख्या में। जावास्क्रिप्ट में टाइप का

  1. जावास्क्रिप्ट में कॉन्स्ट बनाम लेट।

    Const and let को ES2015 में ब्लॉक स्कोप्ड वेरिएबल घोषित करने के लिए पेश किया गया था। जबकि लेट का उपयोग करके घोषित चर को पुन:असाइन किया जा सकता है, यदि उन्हें कॉन्स का उपयोग करके घोषित किया गया है तो उन्हें पुन:असाइन नहीं किया जा सकता है। जावास्क्रिप्ट में लेट और कॉन्स्ट दिखाने वाला कोड निम्नलिखित ह