Esta nota es una continuación de tres anteriores en las que te explicamos cómo puedes cambiar las letras entre minúsculas y mayúsculas fácilmente. Todo esto como parte de nuestro curso de javascript.
Cuatro formas de normalización Unicode
NFC: los caracteres se descomponen y luego se recomponen por equivalencia canónica.
NFD: los caracteres se descomponen por equivalencia canónica, y los caracteres combinados múltiples se acomodan en un orden específico.
NFKD: los caracteres se descomponen por compatibilidad, y los combinados múltiples se ordenan en un orden específico.
NFKC: los caracteres se descomponen por compatibilidad, luego se recomponen por equivalencia canónica.
El método de normalización tiene un único parámetro opcional que se utiliza para determinar en qué forma se normalizan los caracteres. Si no se proporciona ningún valor, el valorvaloel predeterminado es NFC. Si se proporciona un valor distinto de las cuatro opciones, se arroja un RangeError.
Puedes ver cómo funciona el método normalizar con esta simple demostración:
var cafe4= 'café'; var cafe5= 'cafe'; console.log ( cafe4+' '+cafe4.length, // café 4 cafe5+' '+cafe5.length, // café 5 cafe4 === cafe5, // false cafe4.normalize(), cafe5.normalize(), cafe4.normalize() === cafe5.normalize() // true ); //output: café 4 café 5 false café café true
Esta característica se agregó en ECMAScript 6.
El método de normalización no es compatible con Internet Explorer ni con el antiguo navegador de Android, lo que debería esperarse ya que ninguno de estos navegadores se ha actualizado en los últimos años. Me doy cuenta de que puede haber casos en los que desees usar esto en el navegador, pero realmente siento que el método de normalización se usaría más en el espacio de nodejs para, bueno, normalizar los datos.
Al normalizar los caracteres, estás allanando las posibles diferencias de caracteres, lo que significa que tienes más control sobre cómo formateas el texto. La capitalización es solo una de las áreas Unicode donde son útiles.
Puede ser una buena idea normalizar los caracteres a Unicode antes de usar toLowerCase o toUpperCase para garantizar que tengas un conjunto de caracteres estándar.
En las siguientes notas hablaremos más del tema. Por el momento buscan nuestro curso de Excel y nuestro curso de kotlin.