Ya no necesitas buscar más por todo internet ya que has llegado al espacio adecuado, poseemos la solución que necesitas hallar sin problema.
los localeCompare()
El método devuelve un número que indica si una referencia string viene antes o después, o es el mismo que el dado string en orden de clasificación.
El nuevo locales
y options
Los argumentos permiten que las aplicaciones especifiquen el lenguaje cuyo orden de clasificación debe usarse y personalicen el comportamiento de la función. En implementaciones más antiguas, que ignoran la locales
y options
argumentos, la configuración regional y el orden de clasificación utilizados son completamente dependientes de la implementación.
Sintaxis
localeCompare(compareString)localeCompare(compareString, locales)localeCompare(compareString, locales, options)
Parámetros
compareString
- los string contra lo cual el
referenceStr
se compara. locales
yoptions
-
Estos argumentos personalizan el comportamiento de la función y permiten que las aplicaciones especifiquen el lenguaje cuyas convenciones de formato deben usarse. En implementaciones que ignoran la
locales
yoptions
argumentos, la configuración regional utilizada y la forma de la string devueltos son completamente dependientes de la implementación.Ver el
Intl.Collator()
constructor para obtener detalles sobre estos parámetros y cómo usarlos.
Valor devuelto
A negativo número si referenceStr
ocurre antes compareString
; positivo Si el referenceStr
ocurre después de compareString
; 0
si son equivalentes.
Descripción
Devuelve un entero que indica si el referenceStr
viene antes, después o es equivalente a la compareString
.
- Negativo cuando el
referenceStr
ocurre antescompareString
- Positivo cuando el
referenceStr
ocurre despuéscompareString
- Devoluciones
0
si son equivalentes
Advertencia: No confíe en valores de retorno exactos de -1
o 1
!
Los resultados enteros negativos y positivos varían entre navegadores (así como entre versiones de navegadores) porque la especificación W3C solo exige valores negativos y positivos. Algunos navegadores pueden volver -2
o 2
, o incluso algún otro valor negativo o positivo.
Rendimiento
Al comparar un gran número de cadenas, como al ordenar matrices grandes, es mejor crear una Intl.Collator
objeto y utilizar la función proporcionada por su compare
propiedad.
Ejemplos de
Utilizando localeCompare()
// The letter "a" is before "c" yielding a negative value'a'.localeCompare('c');// -2 or -1 (or some other negative value)// Alphabetically the word "check" comes after "against" yielding a positive value'check'.localeCompare('against');// 2 or 1 (or some other positive value)// "a" and "a" are equivalent yielding a neutral value of zero'a'.localeCompare('a');// 0
Ordenar un array
localeCompare()
permite la clasificación que no distingue entre mayúsculas y minúsculas para un array.
let items =['réservé','Premier','Cliché','communiqué','café','Adieu']; items.sort((a, b)=> a.localeCompare(b,'fr',ignorePunctuation:true));// ['Adieu', 'café', 'Cliché', 'communiqué', 'Premier', 'réservé']
Verifique el soporte del navegador para argumentos extendidos
los locales
y options
Los argumentos aún no son compatibles con todos los navegadores.
Para comprobar si una implementación los admite, utilice el "i"
argumento (un requisito de que se rechacen las etiquetas de idioma ilegales) y busque un RangeError
excepción:
functionlocaleCompareSupportsLocales()try'foo'.localeCompare('bar','i');catch(e)return e.name ==='RangeError';returnfalse;
Utilizando locales
Los resultados proporcionados por localeCompare()
varían entre idiomas. Para obtener el orden de clasificación del idioma utilizado en la interfaz de usuario de su aplicación, asegúrese de especificar ese idioma (y posiblemente algunos idiomas alternativos) utilizando el locales
argumento:
console.log('ä'.localeCompare('z','de'));// a negative value: in German, ä sorts before z console.log('ä'.localeCompare('z','sv'));// a positive value: in Swedish, ä sorts after z
Utilizando options
Los resultados proporcionados por localeCompare()
se puede personalizar con el options
argumento:
// in German, ä has a as the base letter console.log('ä'.localeCompare('a','de', sensitivity:'base'));// 0// in Swedish, ä and a are separate base letters console.log('ä'.localeCompare('a','sv', sensitivity:'base'));// a positive value
Clasificación numérica
// by default, "2" > "10" console.log("2".localeCompare("10"));// 1// numeric using options: console.log("2".localeCompare("10",undefined,numeric:true));// -1// numeric using locales tag: console.log("2".localeCompare("10","en-u-kn-true"));// -1
Especificaciones
Compatibilidad del navegador
Escritorio | Móvil | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Cromo | Borde | Firefox | explorador de Internet | Ópera | Safari | WebView Android | Chrome Android | Firefox para Android | Opera Android | Safari en IOS | Internet de Samsung | |
localeCompare |
1 | 12 | 1 | 5.5 | 7 | 3 | 1 | 18 | 4 | 10.1 | 1 | 1.0 |
locales |
24 | 12 | 29 | 11 | 15 | 10 | No | 26 | 56 | No | 10 | 1,5 |
options |
24 | 12 | 29 | 11 | 15 | 10 | No | 26 | 56 | No | 10 | 1,5 |
Ver también
Intl.Collator
Tienes la opción de añadir valor a nuestro contenido informacional cooperando tu experiencia en los comentarios.