Los últimos tutoriales de desarrollo web
 

JavaScript Métodos de cuerda


Métodos de cadena le ayudan a trabajar con cadenas.


Métodos de cuerda y Propiedades

Los valores primitivos, como "John Doe" , no pueden tener propiedades o métodos (porque no son objetos).

Pero con el lenguaje Java, métodos y propiedades también están disponibles para valores primitivos, porque JavaScript trata a los valores simples como objetos al ejecutar los métodos y propiedades.


Longitud de la cuerda

La length la propiedad devuelve la longitud de una cadena:

Ejemplo

var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var sln = txt.length;
Inténtalo tú mismo "

Cómo buscar una cadena en una cadena

El indexOf() método devuelve el índice de (la posición de) la primera aparición de un texto especificado en una cadena:

Ejemplo

var str = "Please locate where 'locate' occurs!";
var pos = str.indexOf("locate");
Inténtalo tú mismo "

El lastIndexOf() método devuelve el índice de la última aparición de un texto especificado en una cadena:

Ejemplo

var str = "Please locate where 'locate' occurs!";
var pos = str.lastIndexOf("locate");
Inténtalo tú mismo "

Tanto el indexOf() , y el lastIndexOf() métodos devuelven -1 si no se encuentra el texto.

JavaScript cuenta las posiciones de cero.
0 es la primera posición en una cadena, 1 es el segundo, 2 es el tercer ...

Ambos métodos aceptan un segundo parámetro como la posición de partida para la búsqueda.


Buscar una cadena en una cadena

La search() método busca una cadena para un valor especificado y devuelve la posición del partido:

Ejemplo

var str = "Please locate where 'locate' occurs!";
var pos = str.search("locate");
Inténtalo tú mismo "

¿Te diste cuenta?

Los dos métodos, indexOf() y search() , son iguales.

Ellos aceptan los mismos argumentos (parámetros), y devuelven el mismo valor.

Los dos métodos son iguales, pero la search() método puede tomar mucho más potentes valores de búsqueda.

Va a aprender más acerca de los valores de búsqueda de gran alcance en el capítulo acerca de las expresiones regulares.


La extracción de partes de cuerda

Hay 3 métodos para la extracción de una parte de una cadena:

  • slice(start, end)
  • substring(start, end)
  • substr(start, length)

El slice() Método

slice() extrae una parte de una cadena y devuelve la parte extraída en una nueva cadena.

El método toma 2 parámetros: el índice inicial (posición), y el índice final (posición).

En este ejemplo se rebana a cabo una porción de una cadena desde la posición 7 a la posición 13:

Ejemplo

var str = "Apple, Banana, Kiwi";
var res = str.slice(7,13);

El resultado de la resolución será:

Banana
Inténtalo tú mismo "

Si un parámetro es negativo, la posición se cuenta desde el final de la cadena.

En este ejemplo se rebana a cabo una porción de una cadena desde la posición -12 a la posición -6:

Ejemplo

var str = "Apple, Banana, Kiwi";
var res = str.slice(-12,-6);

El resultado de la resolución será:

Banana
Inténtalo tú mismo "

Si se omite el segundo parámetro, el método cortará el resto de la cadena:

Ejemplo

var res = str.slice(7);
Inténtalo tú mismo "

o, a contar desde el final:

Ejemplo

var res = str.slice(-12);
Inténtalo tú mismo "

posiciones negativas no funcionan en Internet Explorer 8 y versiones anteriores.


La substring() Método

substring() es similar a slice() .

La diferencia es que substring() no puede aceptar índices negativos.

Ejemplo

var str = "Apple, Banana, Kiwi";
var res = str.substring(7,13);

El resultado de la res será:

Banana
Inténtalo tú mismo "

Si se omite el segundo parámetro, substring() va a cortar el resto de la cadena.


El substr() Método

substr() es similar a slice() .

La diferencia es que el segundo parámetro especifica el length de la parte extraída.

Ejemplo

var str = "Apple, Banana, Kiwi";
var res = str.substr(7,6);

El resultado de la resolución será:

Banana
Inténtalo tú mismo "

Si el primer parámetro es negativo, la posición de cuenta desde el extremo de la cadena.

El segundo parámetro no puede ser negativo, ya que define la longitud.

Si se omite el segundo parámetro, substr() va a cortar el resto de la cadena.


Sustitución de cadena de contenido

El replace() método sustituye un valor especificado con otro valor en una cadena:

Ejemplo

str = "Please visit Microsoft!";
var n = str.replace("Microsoft","w3ii");
Inténtalo tú mismo "

El replace() método también puede tener una expresión regular como el valor de búsqueda.

Por defecto, el replace() función reemplaza sólo el primer partido. Para reemplazar todos los ajustes, utilice una expresión regular con la bandera ag (por comparación global):

Ejemplo

str = "Please visit Microsoft!";
var n = str.replace(/Microsoft/g,"w3ii");
Inténtalo tú mismo "

El replace() método no cambia la cadena a la que se llama el. Se devuelve una nueva cadena.


La conversión a mayúsculas y minúsculas

Una cadena se convierte a mayúsculas con toUpperCase() :

Ejemplo

var text1 = "Hello World!";       // String
var text2 = text1.toUpperCase();  // text2 is text1 converted to upper
Inténtalo tú mismo "

Una cadena se convierte a minúsculas con toLowerCase() :

Ejemplo

var text1 = "Hello World!";       // String
var text2 = text1.toLowerCase();  // text2 is text1 converted to lower
Inténtalo tú mismo "

El concat() Método

concat() se une a dos o más cadenas:

Ejemplo

var text1 = "Hello";
var text2 = "World";
text3 = text1.concat(" ",text2);
Inténtalo tú mismo "

El concat() método puede ser utilizado en lugar del operador más. Estas dos líneas hacen lo mismo:

Ejemplo

var text = "Hello" + " " + "World!";
var text = "Hello".concat(" ","World!");

Todos los métodos de las cadenas devuelven una nueva cadena. No modifican la cadena original.
Formalmente dijeron: Las cadenas son inmutables: Las cadenas no se puede cambiar, sólo se sustituye.


La extracción de caracteres de la cadena

Hay 2 métodos seguros para la extracción de caracteres de la cadena:

  • charAt(position)
  • charCodeAt(position)

El charAt() Método

El charAt() método devuelve el carácter en un índice específico (posición) en una cadena:

Ejemplo

var str = "HELLO WORLD";
str.charAt(0);            // returns H
Inténtalo tú mismo "

El charCodeAt() Método

El charCodeAt() método devuelve el Unicode del carácter situado en un índice especificado de una cadena:

Ejemplo

var str = "HELLO WORLD";

str.charCodeAt(0);         // returns 72
Inténtalo tú mismo "

Acceso a una cadena como una matriz es inseguro

Es posible que haya visto un código como éste, el acceso a una cadena como una matriz:

var str = "HELLO WORLD";

str[0];                   // returns H

Esto es peligroso e impredecible:

  • No funciona en todos los navegadores (no en IE5, IE6, IE7)
  • Esto hace que las cadenas se parecen a las matrices (pero no lo son)
  • str[0] = "H" no da un error (pero no funciona)

Si desea leer una cadena como una matriz, convertirlo en una matriz en primer lugar.


La conversión de una cadena en una matriz

Una cadena se puede convertir en una matriz con el split() Método:

Ejemplo

var txt = "a,b,c,d,e";   // String
txt.split(",");          // Split on commas
txt.split(" ");          // Split on spaces
txt.split("|");          // Split on pipe
Inténtalo tú mismo "

Si se omite el separador, la matriz devuelta contendrá toda la cadena entre el índice [0].

Si el separador es "", la matriz devuelta será una matriz de caracteres individuales:

Ejemplo

var txt = "Hello";       // String
txt.split("");           // Split in characters
Inténtalo tú mismo "

Referencia completa de cuerdas

Para una referencia completa, acceda a nuestra Referencia completa String de JavaScript .

La referencia contiene descripciones y ejemplos de todas las propiedades y métodos de las cadenas.


Ponte a prueba con los ejercicios!

Ejercicio 1 » Ejercicio 2» Ejercicio 3 » Ejercicio 4» Ejercicio 5 » Ejercicio 6»