Intl.PluralRulesBaseline · Widely available
The Intl.PluralRules API creates a locale-aware object that tells you which of the language's pluralization rules apply based on a given number.
Supported in all major browsers for at least 30 months — safe to use without fallbacks. Baseline since Sep 19, 2019. Widely available since Mar 19, 2022.
Browser support
DesktopChrome
1–62Not supported
63+Supportedsince Dec 6, 2017
Current: 155Edge
12–17Not supported
18+Supportedsince Oct 2, 2018
Current: 154Firefox
1–57Not supported
58+Supportedsince Jan 23, 2018
Current: 157Safari
1–12.1Not supported
13+Supportedsince Sep 19, 2019
Current: 27MobileChrome Android
18–62Not supported
63+Supportedsince Dec 5, 2017
Current: 155Firefox Android
4–57Not supported
58+Supportedsince Jan 22, 2018
Current: 157Safari iOS
1–12.2Not supported
13+Supportedsince Sep 19, 2019
Current: 27How to use
This feature is Baseline widely available — use it freely, no fallback needed.
Example
Full syntax and examples are on MDN: PluralRules.
Feature detection
JS · check before using
if ("PluralRules" in Intl || ("prototype" in Intl && "PluralRules" in Intl.prototype)) {
// Intl.PluralRules is available
}Documentation (MDN)
Specification
Sub-features
Support for each part of the feature (11). The overall table above shows when the whole feature works.
| Sub-feature | Chrome | Edge | Firefox | Safari | Chrome Android | Firefox Android | Safari iOS |
|---|---|---|---|---|---|---|---|
| Intl.PluralRules | 63 | 18 | 58 | 13 | 63 | 58 | 13 |
| Intl.PluralRules.PluralRules | 63 | 18 | 58 | 13 | 63 | 58 | 13 |
| Intl.PluralRules.PluralRules.options_parameter | 106 | 106 | 116 | 15.4 | 106 | 116 | 15.4 |
| Intl.PluralRules.PluralRules.options_parameter.options_roundingIncrement_parameter | ✕ | ✕ | 116 | 17.2 | ✕ | 116 | 17.2 |
| Intl.PluralRules.PluralRules.options_parameter.options_roundingMode_parameter | 117 | 117 | 116 | 17.2 | 117 | 116 | 17.2 |
| Intl.PluralRules.PluralRules.options_parameter.options_roundingPriority_parameter | 106 | 106 | 116 | 15.4 | 106 | 116 | 15.4 |
| Intl.PluralRules.PluralRules.options_parameter.options_trailingZeroDisplay_parameter | ✕ | ✕ | 116 | ✕ | ✕ | 116 | ✕ |
| Intl.PluralRules.resolvedOptions | 63 | 18 | 58 | 13 | 63 | 58 | 13 |
| Intl.PluralRules.select | 63 | 18 | 58 | 13 | 63 | 58 | 13 |
| Intl.PluralRules.selectRange | 106 | 106 | 116 | 15.4 | 106 | 116 | 15.4 |
| Intl.PluralRules.supportedLocalesOf | 63 | 18 | 58 | 13 | 63 | 58 | 13 |