JavaScript फ़ॉर्मेटर

ब्राउज़र में चलता है फ़ॉर्मेटिंग

मिनिफ़ाइड या बिखरे JavaScript/TypeScript को दोबारा इंडेंट करें, ब्रेस और सेमीकोलन सामान्य करें, और स्ट्रिंग, template literal, regex literal व कमेंट ज्यों के त्यों रखें।

गोपनीयता: यह टूल पूरी तरह आपके ब्राउज़र में चलता है। आपका इनपुट कभी आपके डिवाइस से बाहर नहीं जाता।
टूल लोड हो रहा है…

JavaScript फ़ॉर्मेटर कैसे इस्तेमाल करें

  1. JavaScript या TypeScript पेस्ट करें (मिनिफ़ाइड कोड भी चलेगा)।
  2. इंडेंटेशन चुनें और तय करें कि कितनी खाली लाइनें रखनी हैं।
  3. आउटपुट पैनल से फ़ॉर्मेट किया कोड कॉपी करें।

JavaScript फ़ॉर्मेटर की खूबियाँ

  • मिनिफ़ाइड या बिखरे JavaScript और TypeScript को दोबारा इंडेंट करता है
  • स्ट्रिंग, नेस्टेड ${} वाले template literal, regex literal और कमेंट समझता है
  • ऑपरेटर, कीवर्ड, ब्रेस और कॉमा के आसपास की स्पेसिंग सामान्य करता है
  • switch/case, ऐरो फ़ंक्शन, class, generics और ऑब्जेक्ट literal संभालता है
  • आपके लाइन ब्रेक और सेमीकोलन स्टाइल सुरक्षित रखता है (ASI-सुरक्षित — व्यवहार कभी नहीं बदलता)
  • अधिकतम N खाली लाइनें रखता है; चाहें तो else/catch नई लाइन पर

JavaScript फ़ॉर्मेटर का उदाहरण

मिनिफ़ाइड फ़ंक्शन को खोलना

इनपुट:

function sum(a,b){if(!a)return b;return a+b}

आउटपुट:

function sum(a, b) {
  if (!a) return b;
  return a + b
}

JavaScript फ़ॉर्मेटर के बारे में अक्सर पूछे जाने वाले सवाल

क्या यह TypeScript सपोर्ट करता है?

हाँ। टाइप एनोटेशन, Map<string, number> जैसे generics, interface और decorator फ़ॉर्मेट होते हैं; JS और TS के लिए एक ही tokenizer इस्तेमाल होता है।

क्या यह सेमीकोलन जोड़ेगा या हटाएगा?

नहीं। फ़ॉर्मेटर आपके लाइन ब्रेक और सेमीकोलन स्टाइल बनाए रखता है ताकि automatic semicolon insertion पहले जैसा ही व्यवहार करे। यह सिर्फ़ दोबारा इंडेंट करता है और स्पेसिंग सामान्य करता है।

क्या regex literal, template string और कमेंट सुरक्षित हैं?

हाँ। tokenizer regex literal (character class सहित), नेस्टेड ${} एक्सप्रेशन वाले template literal और दोनों तरह के कमेंट समझता है, इसलिए उनका कंटेंट कभी नहीं बदला जाता।

क्या यह मिनिफ़ाइड कोड फ़ॉर्मेट कर सकता है?

हाँ — यही इसका मुख्य इस्तेमाल है। एक लाइन के मिनिफ़ाइड कोड को पढ़ने योग्य, इंडेंट किए स्टेटमेंट में खोल दिया जाता है। बेशक, बदले हुए identifier नाम वापस नहीं लाए जा सकते।

क्या मेरा कोड ब्राउज़र से बाहर जाता है?

नहीं। फ़ॉर्मेटिंग आपके ब्राउज़र में ही लोकल होती है।

तकनीकी नोट्स

यह पूरा पार्सर नहीं, व्हाइटस्पेस फ़ॉर्मेटर है: यह टोकन कभी दोबारा नहीं लिखता, इसलिए उस सिंटैक्स पर भी सुरक्षित है जिसे यह पूरी तरह नहीं समझता (JSX, decorator, नए प्रस्ताव)। चूँकि JavaScript में automatic semicolon insertion होता है, मौजूदा लाइन ब्रेक बनाए रखे जाते हैं और नए ब्रेक सिर्फ़ ; { और } के बाद जोड़े जाते हैं।