# आधुनिक बनाम Legacy Browsers को Target करना — Babel और SWC: JavaScript Transpilation और Build Speed

Source: https://www.skillbyai.com/hi/babel-swc/bs-target-browser

> browserslist से browser targets सेट करें ताकि preset-env केवल वही transpile करे जो आपके users के browsers को चाहिए।

## आधुनिक targets: कम transpilation

यदि केवल आधुनिक browsers को support कर रहे हैं (Chrome 90+, Firefox 88+), Babel अधिकांश transpilation को छोड़ देता है। आधुनिक JavaScript विशेषताएं natively काम करती हैं, bundle size को कम करती हैं।

## Browserslist उदाहरण

Targets को परिभाषित करने के लिए browserslist syntax का उपयोग करें। Preset-env इसे पढ़ता है और accordingly transpile करता है।

```json
// Modern SPA: less transpilation
{
  "targets": {
    "browsers": ["last 2 Chrome versions", "last 2 Firefox versions"]
  }
}

// Legacy support: more transpilation
{
  "targets": {
    "browsers": ["IE 11", "iOS >= 9"]
  }
}
```

## Bundle impact को measure करें

बहुत पुराने browsers के लिए transpile करने से bundle size 20-30% बढ़ सकता है। आधुनिक targets के लिए अक्सर transpilation लगभग पूरी तरह छोड़ा जा सकता है, जिससे kilobytes बचते हैं।
