Novedades ES6

Clase String en Javascript

String es una clase en JavaScript que se usa para manipular cadenas de caracteres. En JavaScript todo texto encerrado entre comillas, dobles o simples, se interpreta como una cadena, así '45' no es el número cuarenta y cinco sino la cadena formada por los caracteres 4 y 5.

La clase String permite realizar operaciones con cadenas como concatenar o dividir cadenas, buscar texto, extraer parte de un texto, etc... La operación de crear una variable de este tipo se lleva a cabo como es habitual con el operador new pudiéndole pasar un argumento para inicializar la variable. Al usar un método o referirnos a una propiedad podemos usar el nombre de la variable o una constante de cadena.

En javascript las variables de tipo texto son objetos de la clase String. Esto quiere decir que cada una de las variables que creamos de tipo texto tienen una serie de propiedades y métodos. Recordamos que las propiedades son las características, como por ejemplo longitud en caracteres del string y los métodos son funcionalidades, como pueden ser extraer un substring o poner el texto en mayúsculas.

Para crear un objeto de la clase String lo único que hay que hacer es asignar un texto a una variable. El texto va entre comillas, como ya hemos visto en los capítulos de sintaxis. También se puede crear un objeto string con el operador new, que veremos más adelante. La única diferencia es que en versiones de Javascript 1.0 no funcionará new para crear los Strings.

  Length La clase String sólo tiene una propiedad: length, que guarda el número de caracteres del String.

Los objetos de la clase String tienen una buena cantidad de métodos para realizar muchas cosas interesantes. Primero vamos a ver una lista de los métodos más interesantes y luego vamos a ver otra lista de métodos menos útiles.

charAt(indice) Devuelve el carácter que hay en la posición indicada como índice. Las posiciones de un string empiezan en 0.
indexOf(carácter,desde) Devuelve la posición de la primera vez que aparece el carácter indicado por parámetro en un string. Si no encuentra el carácter en el string devuelve -1. El segundo parámetro es opcional y sirve para indicar a partir de que posición se desea que empiece la búsqueda.
lastIndexOf(carácter,desde) Busca la posición de un carácter exáctamente igual a como lo hace la función indexOf pero desde el final en lugar del principio. El segundo parámetro indica el número de caracteres desde donde se busca, igual que en indexOf.
replace(substring_a_buscar,nuevoStr) Implementado en Javascript 1.2, sirve para reemplazar porciones del texto de un string por otro texto, por ejemplo, podríamos uilizarlo para reemplazar todas las apariciones del substring "xxx" por "yyy". El método no reemplaza en el string, sino que devuelve un resultante de hacer ese reemplazo. Acepta expresiones regulares como substring a buscar.
split(separador) Este método sólo es compatible con javascript 1.1 en adelante. Sirve para crear un vector a partir de un String en el que cada elemento es la parte del String que está separada por el separador indicado por parámetro.
substring(inicio,fin) Devuelve el substring que empieza en el carácter de inicio y termina en el carácter de fin. Si intercambiamos los parámetros de inicio y fin también funciona. Simplemente nos da el substring que hay entre el carácter menor y el mayor.
toLowerCase() Pone todas los caracteres de un string en minúsculas.os
toUpperCase() Pone todas los caracteres de un string en mayúsculas.
toString() Este método lo tienen todos los objetos y se usa para convertirlos en cadenas.

Hasta aquí hemos visto los métodos que nos ayudarán a tratar cadenas. Ahora vamos a ver otros métodos que son menos útiles, pero hay que indicarlos para que quede constancia de ellos. Todos sirven para aplicar estilos a un texto y es como si utilizásemos etiquetas HTML. Veamos cómo.

anchor(name) Convierte en un ancla (sitio a donde dirigir un enlace) una cadena de caracteres usando como el atributo name de la etiqueta <A> lo que recibe por parámetro.a>
big() Aumenta el tamaño de letra del string. Es como si colocásemos en un string al principio la etiqueta <BIG> y al final </BIG>..
blink() Para que parpadee el texto del string, es como utilizar la etiqueta <BLINK>. Solo vale para Netscape.
bold() Como si utilizásemos la etiqueta <B>.
fixed()    Para utilizar una fuente monoespaciada, etiqueta <TT>.
fontColor(color) Pone la fuente a ese color. Como utilizar la etiqueta <FONT color=el_color_indicado>
fontSize(tamaño) Pone la fuente al tamaño indicado. Como si utilizásemos la etiqueta <FONT> con el atributo size.
italics() Pone la fuente en cursiva. Etiqueta <I>.
link(url) Pone el texto como un enlace a la URL indicada. Es como si utilizásemos la etiqueta <A> con el atributo href indicado como parámetro.
small() Es como utilizar la etiqueta <SMALL>
strike() Como utilizar la etiqueta <STRIKE>, que sirve para que el texto aparezca tachado.
sub() Actualiza el texto como si se estuviera utilizando la etiqueta <SUB>, de subíndice.
sup() Como si utilizásemos la etiqueta <SUP>, de superíndice.


<html>
<body>
<h2>Métodos de cadena de JavaScript</h2>
<p>El método slice () extrae una parte de una cadena y devuelve las partes extraídas en una nueva cadena:</p>
<p id="demo"></p>
<script>
var str = "Manzana, Banana, Kiwi";
var res = str.slice(7);
document.getElementById("demo").innerHTML = res;
</script>
</body>
</html>