# text.integer-to-words Spells out a whole number in British English: 1234 is "one thousand two hundred and thirty-four". It is the integer half of cheque wording; the money form, with pounds and pence, is `text.number-to-words`, which builds on this. ## The rules - Numbers from 21 to 99 are hyphenated: "forty-two". - "and" joins a hundred to what follows it inside each group of three: "one hundred and one", "nine hundred and ninety-nine". - "and" also goes before the final group when that group is under a hundred and something larger precedes it: "one thousand and one", "one million and fifty". A final group of a hundred or more does not get one ("one thousand one hundred"), and nor do the middle groups ("two million five thousand"). That is the usual British cheque convention; American English leaves every "and" out, and this capability does not offer that form. - No commas are written between the groups. - Scales are the short scale used in the UK since 1974: thousand, million, billion (10^9), trillion (10^12), quadrillion (10^15). - Zero is "zero"; negative numbers get "minus" in front. - Everything is lower case. Capitalise the first letter yourself if the sentence needs it. ## Limits The magnitude is capped at 9007199254740991 (2^53 - 1), the largest integer a JavaScript number holds exactly. Above it the three languages would disagree about what number was passed, so it is an error rather than a guess. A fractional number is an error too: this is for whole numbers, and money goes through `text.number-to-words` in integer minor units.