-
Jun 20th, 2011, 06:18 PM
#1
Thread Starter
Stack Overflow moderator
Easy Pluralization
It's always annoying to spend time working with ternary if statements and what not, or even (gasp) using a variable to pluralize things. Here's a snippet that makes it easier.
http://jsfiddle.net/minitech/PefYd/
You use it like so:
Code:
var str = "There {is|are} # apples. The #% apple looks nice to me.".plural(5);
Which gives:
Code:
"There are 5 apples. The 5th apple looks nice to me."
# is replaced with the passed integer. % becomes st, nd, rd, or th. {x} becomes x if the number is plural, nothing otherwise. {x|y} becomes x if the number is singular, y if it is plural. More than 2 results in 1 being turned into the first one, 2 to the second one, 3 to the third one, etc. and all out of range values being turned into the last one.
Enjoy! Suggestions are welcome.
Last edited by minitech; Jun 20th, 2011 at 06:35 PM.
-
Jun 20th, 2011, 08:09 PM
#2
Re: Easy Pluralization
Haven't looked at the code... but might need some more work as "There are 1 apples. The 1st apple looks nice to me." doesn't work either... specifically "There are 1 apples." ??? Even "There is 1 apples." doesn't work. I'm just saying. :P
Would it need to be done like this?
var str = "There {is|are} # {apple|apples}. The #% apple looks nice to me.".plural(1);
Would it work at that point?
I will admit... that's pretty cool...
-tg
-
Jun 20th, 2011, 10:50 PM
#3
Thread Starter
Stack Overflow moderator
Re: Easy Pluralization
Oops, it's supposed to be apple{s} instead. Sorry.
-
Jun 21st, 2011, 06:02 AM
#4
Re: Easy Pluralization
In what kind of program would I use this?
-
Jun 21st, 2011, 03:24 PM
#5
Thread Starter
Stack Overflow moderator
Re: Easy Pluralization
In any sort of page where you need pluralization. For example, on websites (like SourceForge) that say "Your download will start in 1 seconds". Using this, the "seconds" can turn into "second" at the right time.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|