El objeto String() de JavaScript dispone de varios métodos y propiedades que nos permitirán realizar operaciones útiles con cadenas, que a continuación te describimos.
var objCadena = new String("Aprendiendo a programar en javaScript");
alert( objCadena );

Al crear una variable de forma normal y asignarle una cadena de texto, se tratará igualmente como un Objeto.

Las posiciones de cada carácter dentro de una cadena en JavaScript comienzan desde cero (es decir, el primer carácter estará en la posición cero).
Los métodos toLowerCase() y toUpperCase() devuelven una cadena convertida a minúsculas y mayúsculas, respectivamente:
var cadena1 = "Aprendiendo a programar en javaScript";
cadena2 = cadena1.toLowerCase();
document.write( cadena2 + "<br />" ); // Devuelve "aprendiendo a programar en javascript"
cadena3 = cadena1.toUpperCase();
document.write( cadena3 + "<br />" ); // Devuelve "APRENDIENDO A PROGRAMAR EN JAVASCRIPT"
Con la propiedad length obtendremos la longitud de una cadena (espacios incluidos) en JavaScript:
var cadena = "Aprendiendo a programar en javaScript";
alert( cadena.length ); // Devuelve 37
Normalmente podemos unir cadenas (concatenarlas) usando el operador ' + ' del siguiente modo:
var cadena1 = "Aprendiendo a";
var cadena2 = "programar en ";
var cadena3 = "JavaScript";
var cadena4 = cadena1 + " " + cadena2 + cadena3;
alert( cadena4 ); // Devuelve "Aprendiendo a programar en JavaScript"
Otra forma de hacerlo es usando el método concat() del Objeto String():
var cadena1 = "Aprendiendo a ";
var cadena2 = "programar en";
var cadena3 = "JavaScript";
var cadena4 = cadena1.concat( cadena2, " ", cadena3 );
alert( cadena4 ); // Devuelve "Aprendiendo a programar en JavaScript"
Observa que en ambos casos podemos concatenar tanto cadenas entre comillas, como con el contenido de variables cuyo valor es de tipo cadena.
Podemos convertir un número a cadena concatenando un número con una cadena usando el operador '+', o bien con la función String() (no el Objeto del mismo nombre):
var s1 = "C/Redonda nº " + 3;
var s2 = String(33);
var s3 = String("44 55");
var s4 = String(true);
var s5 = String(false);
var s6 = String( new Date() );
var s7 = String("10/05/2011");
document.write( s1 + "<br />" ); // Devuelve: "C/Redonda nº 3"
document.write( s2 + "<br />" ); // Devuelve: "33"
document.write( s3 + "<br />" ); // Devuelve: "44 55"
document.write( s4 + "<br />" ); // Devuelve: "true"
document.write( s5 + "<br />" ); // Devuelve: "false"
document.write( s6 + "<br />" ); // Devuelve: "Tue May 17 14:41:53 UTC+0100 2011"
document.write( s7 + "<br />" ); // Devuelve: "10/05/2011"
Usaremos el método charAt() para extraer un carácter de una cadena (recuerda que las posiciones comienzan desde cero):
var cadena = "Aprendiendo a programar en javaScript";
document.write( cadena.charAt(0) + "<br />" ); // Devuelve 'A'
document.write( cadena.charAt(2) + "<br />" ); // Devuelve 'r'
En ocasiones necesitaremos averiguar si una cadena de texto en JavaScript contiene a su vez un determinado texto. En tales casos haremos uso del método indexOf(), que realizará la búsqueda distinguiendo entre mayúsculas y minúsculas.
Se devolverá la posición en la comienza el texto buscado en la cadena, o bien -1 en caso de que no se encuentre el texto buscado:
var cadena = "Aprendiendo a programar en JavaScript";
document.write( cadena.indexOf("JAVASCRIPT") + "<br />" ); // Devuelve -1
document.write( cadena.indexOf("JavaScript") + "<br />" ); // Devuelve 27
Podemos indicar que la búsqueda debe comenzar a partir de una determinada posición, indicándola como segundo parámetro:
var cadena = "Aprendiendo a programar en JavaScript";
alert( cadena.indexOf("programar", 23) ); // Devuelve -1
En este caso se devuelve -1 porque aunque la palabra 'programar' se encuentra en la cadena de texto, la búsqueda comienza después de ella.
También disponemos del método lastIndexOf(), que devolverá la posición de la última ocurrencia de una cadena dentro de otra, o -1 en caso de que el texto a buscar no se encontrase:
var cadena = "Curso de JavaScript: aprendiendo a programar en JavaScript";
alert( cadena.lastIndexOf("JavaScript") ); // Devuelve 48
Como vemos, se devuelve la posición 48 aunque la palabra 'JavaScript' se encuentra también en la posición 9 anterior.
Por último, podemos usar también el método search(), que al igual que indexOf() diferencia entre mayúsculas y minúsculas y devuelve la posición en que se halle el texto dentro de la cadena de texto, o bien -1 si no se ha encontrado:
var cadena = "Aprendiendo a programar en JavaScript";
alert( cadena.search("JavaScript") ); // Devuelve 27
El método search() es usado principalmente con expresiones regulares, las cuales explicaremos más adelante.

Vea también: [ Buscar en cadenas usando expresiones regulares ]