पाठ 28 / 30

Common Interview Questions

Tech interviews के लिए essential Babel और SWC concepts।

त्वरित जाँच: Babel का प्राथमिक उद्देश्य क्या है?

  • पुराने browsers के लिए आधुनिक JavaScript को ES5-compatible syntax में convert करना
  • JavaScript फ़ाइलों को minify और compress करना
  • Multiple फ़ाइलों को एक में bundle करना
Answer

पुराने browsers के लिए आधुनिक JavaScript को ES5-compatible syntax में convert करना — Babel आधुनिक JavaScript को compatible पुरानी syntax में transpile करता है। Minification और bundling अलग concerns हैं जो अन्य tools द्वारा संभाले जाते हैं।

त्वरित जाँच: SWC Babel से तेज क्यों है?

  • SWC बड़ी फ़ाइलों के transpilation को skip करता है
  • SWC को Rust में लिखा गया है और native code में compiled है, जबकि Babel interpreted JavaScript है
  • SWC JSX या TypeScript को transpile नहीं करता
Answer

SWC को Rust में लिखा गया है और native code में compiled है, जबकि Babel interpreted JavaScript है — SWC का Rust implementation बहुत बड़े performance gains को enable करता है। Compiled native code CPU-intensive parsing और AST transformation के लिए interpreted JavaScript से बहुत तेज है।

त्वरित जाँच: क्या Babel runtime features को add कर सकता है जो target browser में exist नहीं करते?

  • हाँ, हमेशा
  • नहीं, Babel केवल syntax को transpile कर सकता है; runtime features को polyfills की जरूरत है
  • हाँ, लेकिन केवल Promise और Array methods के लिए
Answer

नहीं, Babel केवल syntax को transpile कर सकता है; runtime features को polyfills की जरूरत है — Babel syntax को transpile करता है लेकिन functions को नहीं बना सकता जो exist नहीं करते। `Promise.all()` या `Array.prototype.includes()` जैसी runtime features के लिए, core-js जैसे polyfills का उपयोग करें।