This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2019.
The select() method of Intl.PluralRules instances returns a string indicating which plural rule to use for locale-aware formatting of a number.
console.log(new Intl.PluralRules("ar-EG").select(0));
// Expected output: "zero"
console.log(new Intl.PluralRules("ar-EG").select(5));
// Expected output: "few"
console.log(new Intl.PluralRules("ar-EG").select(55));
// Expected output: "many"
console.log(new Intl.PluralRules("en").select(0));
// Expected output: "other"
select(number)
numberThe number to get a plural rule for.
A string representing the pluralization category of the number. This can be one of zero, one, two, few, many, or other.
This function selects a pluralization category according to the locale and formatting options of an Intl.PluralRules object. These options are set in the Intl.PluralRules() constructor.
First, create an Intl.PluralRules object, passing the appropriate locales and options parameters. Here we create a plural rules object for Arabic in the Egyptian dialect. Because the type is not specified the rules object will provide formatting for cardinal numbers (the default).
const pr = new Intl.PluralRules("ar-EG");
Then call select() on the rules object, specifying the number for which the plural form is required. Note that Arabic has 5 forms for cardinal numbers, as shown.
pr.select(0); // 'zero' pr.select(1); // 'one' pr.select(2); // 'two' pr.select(6); // 'few' pr.select(18); // 'many'
| Desktop | Mobile | Server | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | Bun | Deno | Node.js | |
select |
63 | 18 | 58 | 50 | 13 | 63 | 58 | 46 | 13 | 8.0 | 63 | 13 | 1.0.0 | 1.8 | 10.0.0Before version 13.0.0, only the locale data foren-US is available by default. See the PluralRules() constructor for more details. |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/PluralRules/select