Section 24.169. String.localeCompare( ): compare one string to another, using locale-specific ordering


24.169. String.localeCompare( ): compare one string to another, using locale-specific ordering

ECMAScript v3

24.169.1. Synopsis

string.localeCompare(target)

24.169.1.1. Arguments

target

A string to be compared, in a locale-sensitive fashion, with string.

24.169.1.2. Returns

A number that indicates the result of the comparison. If string is "less than" target, localeCompare( ) returns a number less than zero. If string is "greater than" target, the method returns a number greater than zero. And if the strings are identical or indistinguishable according to the locale ordering conventions, the method returns 0.

24.169.2. Description

When the < and > operators are applied to strings, they compare those strings using only the Unicode encodings of those characters and do not consider the collation order of the current locale. The ordering produced in this way is not always correct. Consider Spanish, for example, in which the letters "ch" are traditionally sorted as if they were a single letter that appeared between the letters "c" and "d".

localeCompare( ) provides a way to compare strings that does take the collation order of the default locale into account. The ECMAScript standard does not specify how the locale-specific comparison is done; it merely specifies that this function utilize the collation order provided by the underlying operating system.

24.169.3. Example

You can use code like the following to sort an array of strings into a locale-specific ordering:

 var strings;  // The array of strings to sort; initialized elsewhere strings.sort(function(a,b) { return a.localeCompare(b) }); 




JavaScript. The Definitive Guide
JavaScript: The Definitive Guide
ISBN: 0596101996
EAN: 2147483647
Year: 2004
Pages: 767

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net