MEJOR SITIO PARA DESARROLLADORES WEB

JS Tutorial

JS HOGAR JS Introducción JS A donde JS Producción JS Declaraciones JS Sintaxis JS Comentarios JS Variables JS Let JS Const JS Operadores JS Aritmética JS Asignación JS Tipos de datos JS Funciones JS Objetos JS Eventos JS Cadenas JS Métodos de cadena JS Búsqueda de cadenas JS Plantillas de cadenas JS Números JS Métodos numéricos JS Matrices JS Métodos de matriz JS Clasificación de matrices JS Iteración de matriz JS Array Const JS Fechas JS Formatos de fecha JS Métodos de obtención de fecha JS Métodos de configuración de fechas JS Math JS aleatorio JS Booleanos JS Comparaciones JS If Else JS Switch JS Bucle For JS Bucle For In JS Bucle For Of JS Bucle While JS Break JS Iterables JS Conjuntos JS Maps JS Tipo de JS Conversión de tipo JS Bitwise JS RegExp JS Errores JS Alcance JS Hoisting JS Modo estricto JS this palabra clave JS Función de flecha JS Clases JS Módulos JS JSON JS Depuración JS Guía de estilo JS Mejores prácticas JS Errores JS Rendimiento JS Palabras reservadas

JS Versiones

JS Versiones JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS 2019 JS 2020 JS 2021/2022 JS IE / Edge JS Historia

JS Objetos

Objeto Definiciones Objeto Propiedades Objeto Métodos Objeto Display Objeto Accesorios Objeto Constructores Objeto Prototipos Objeto Iterables Objeto Conjuntos Objeto Mapas Objeto Referencia

JS Funciones

Función Definiciones Función Parámetros Función Invocación Función Llamar Función Aplicar Función Unir Función Cierres

JS Clases

Clase Introducción Clase Herencia Clase Estático

JS Asíncrono

JS Devoluciones de llamada JS Asincrónico JS Promesas JS Async/Await

JS HTML DOM

DOM Introducción DOM Métodos DOM Documento DOM Elementos DOM HTML DOM Formularios DOM CSS DOM Animaciones DOM Eventos DOM Oyente de eventos DOM Navegación DOM Nodos DOM Colecciones DOM Listas de nodos

JS Navegador BOM

JS Ventana JS Pantalla JS Ubicación JS Historia JS Navegador JS Alerta emergente JS Momento JS Cookies

JS Web APIs

Web API Introducción API de formularios web API de historial web API de almacenamiento web API de trabajador web API de recuperación web API de geolocalización web

JS AJAX

AJAX Introducción AJAX XMLHttp AJAX Pedido AJAX Respuesta AJAX XML Archivo AJAX PHP AJAX ASP AJAX Base de datos AJAX Aplicaciones AJAX Ejemplos

JS JSON

JSON Introducción JSON Sintaxis JSON vs XML JSON Tipos de datos JSON Analizar JSON Stringificar JSON Objetos JSON Matrices JSON Servidor JSON PHP JSON HTML JSON JSONP

JS vs jQuery

jQuery Selectores jQuery HTML jQuery CSS jQuery DOM

JS Gráficos

JS Gráficos JS Canvas JS Plotly JS Chart.js JS Google Chart JS D3.js

JS Ejemplos

JS Ejemplos JS HTML DOM JS HTML Input JS HTML Objetos JS HTML Eventos JS Navegador JS Editor JS Ejercicios JS Prueba JS Bootcamp JS Certificado

JS Referencias

JavaScript Objetos HTML DOM Objetos

JavaScript. W3Schools en español. Lecciones para principiantes

Ua En De Fr

JavaScript Métodos de cadena


Los métodos de cadena le ayudan a trabajar con cadenas.


Métodos y propiedades de cadenas

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

Pero con JavaScript, los métodos y las propiedades también están disponibles para los valores primitivos, porque JavaScript trata los valores primitivos como objetos cuando ejecuta métodos y propiedades.


Longitud de cadena de JavaScript

La propiedad length devuelve la longitud de una cadena:

Ejemplo

let txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
let length = txt.length;
Try it Yourself »

Extracción de partes de una cadena

Existen 3 métodos para extraer una parte de una cadena:

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

Slice() de cadena de JavaScript

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

El método toma 2 parámetros: la posición inicial y la posición final (no se incluye el final).

Ejemplo

Cortar una porción de una cuerda desde la posición 7 a la posición 13 (13 no incluida):

let str = "Apple, Banana, Kiwi";
let part = str.slice(7, 13);
Try it Yourself »

Nota

JavaScript cuenta las posiciones desde cero.

La primera posición es 0.

La segunda posición es 1.

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

Este ejemplo corta una parte de una cadena desde la posición -12 a la posición -6:

Ejemplo

let str = "Apple, Banana, Kiwi";
let part = str.slice(-12, -6);
Try it Yourself »

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

Ejemplo

let part = str.slice(7);
Try it Yourself »

o, contando desde el final:

Ejemplo

let part = str.slice(-12);
Try it Yourself »

Substring() de JavaScript String

substring() es similar a slice().

La diferencia es que los valores iniciales y finales menores a 0 se tratan como 0 en substring().

Ejemplo

let str = "Apple, Banana, Kiwi";
let part = str.substring(7, 13);
Try it Yourself »

Si omite el segundo parámetro, substring() eliminará el resto de la cadena.


Cadena JavaScript substr()

substr() es similar a slice().

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

Ejemplo

let str = "Apple, Banana, Kiwi";
let part = str.substr(7, 6);
Try it Yourself »

Si omite el segundo parámetro, substr() eliminará el resto de la cadena.

Ejemplo

let str = "Apple, Banana, Kiwi";
let part = str.substr(7);
Try it Yourself »

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

Ejemplo

let str = "Apple, Banana, Kiwi";
let part = str.substr(-4);
Try it Yourself »

Reemplazo de contenido de cadena

El método replace() reemplaza un valor especificado por otro valor en una cadena:

Ejemplo

let text = "Please visit Microsoft!";
let newText = text.replace("Microsoft", "W3Schools");
Try it Yourself »

Nota

El método replace() no cambia la cadena en la que se invoca.

El método replace() devuelve una nueva cadena.

El método replace() reemplaza solo la primera coincidencia

Si desea reemplazar todas las coincidencias, utilice una expresión regular con el indicador /g establecido. Vea los ejemplos a continuación.

De forma predeterminada, el método replace() reemplaza solo la primera coincidencia:

Ejemplo

let text = "Please visit Microsoft and Microsoft!";
let newText = text.replace("Microsoft", "W3Schools");
Try it Yourself »

De forma predeterminada, el método replace() distingue entre mayúsculas y minúsculas. Escribir MICROSOFT (con mayúsculas) no funcionará:

Ejemplo

let text = "Please visit Microsoft!";
let newText = text.replace("MICROSOFT", "W3Schools");
Try it Yourself »

Para reemplazar la distinción entre mayúsculas y minúsculas, use una expresión regular con un indicador /i (sin distinción entre mayúsculas y minúsculas):

Ejemplo

let text = "Please visit Microsoft!";
let newText = text.replace(/MICROSOFT/i, "W3Schools");
Try it Yourself »

Nota

Las expresiones regulares se escriben sin comillas.

Para reemplazar todas las coincidencias, use una expresión regular con un indicador /g (coincidencia global):

Ejemplo

let text = "Please visit Microsoft and Microsoft!";
let newText = text.replace(/Microsoft/g, "W3Schools");
Try it Yourself »

Nota

Aprenderás mucho más sobre expresiones regulares en el capítulo Expresiones regulares de JavaScript.


Conversión a mayúsculas y minúsculas

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

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


Cadena de JavaScript toUpperCase()

Ejemplo

let text1 = "Hello World!";
let text2 = text1.toUpperCase();
Try it Yourself »

Cadena de JavaScript toLowerCase()

Ejemplo

let text1 = "Hello World!";       // Cadena
let text2 = text1.toLowerCase();  // text2 es text1 convertido a minúscula
Try it Yourself »

Cadena de JavaScript concat()

concat() une dos o más cadenas:

Ejemplo

let text1 = "Hello";
let text2 = "World";
let text3 = text1.concat(" ", text2);
Try it Yourself »

Se puede utilizar el método concat() en lugar del operador más. Estas dos líneas hacen lo mismo:

Ejemplo

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

Nota

Todos los métodos de cadena devuelven una nueva cadena. No modifican la cadena original.

En términos formales:

Las cadenas son inmutables: no se pueden cambiar, solo reemplazar.


Cadena de JavaScript trim()

El método trim() elimina los espacios en blanco de ambos lados de una cadena:

Ejemplo

let text1 = "      Hello World!      ";
let text2 = text1.trim();
Try it Yourself »

Relleno de cadenas en JavaScript

ECMAScript 2017 agregó dos métodos de cadena: padStart() y padEnd() para admitir el relleno al principio y al final de una cadena.


PadStart() de cadena de JavaScript

El método padStart() rellena una cadena con otra cadena:

Ejemplo

let text = "5";
let padded = text.padStart(4,"x");
Try it Yourself »

Ejemplo

let text = "5";
let padded = text.padStart(4,"0");
Try it Yourself »

Nota

El método padStart() es un método de cadena.

Para rellenar un número, primero convierta el número en una cadena.

Vea el ejemplo a continuación.

Ejemplo

let numb = 5;
let text = numb.toString();
let padded = text.padStart(4,"0");
Try it Yourself »

Compatibilidad con navegadores

padStart() es una característica de ECMAScript 2017.

Es compatible con todos los navegadores modernos:

Chrome Edge Firefox Safari Opera

padStart() no la compatible con Internet Explorer.


Cadena de JavaScript padEnd()

El método padEnd() rellena una cadena con otra cadena:

Ejemplo

let text = "5";
let padded = text.padEnd(4,"x");
Try it Yourself »

Ejemplo

let text = "5";
let padded = text.padEnd(4,"0");
Try it Yourself »

Nota

El método padEnd() es un método de cadena.

Para rellenar un número, primero convierta el número en una cadena.

Vea el ejemplo a continuación.

Ejemplo

let numb = 5;
let text = numb.toString();
let padded = text.padEnd(4,"0");
Try it Yourself »

Compatibilidad con navegadores

padEnd() es una función de ECMAScript 2017.

Es compatible con todos los navegadores modernos:

Chrome Edge Firefox Safari Opera

padEnd() no la compatible con Internet Explorer.


Extracción de caracteres de cadena

Existen 3 métodos para extraer caracteres de cadena:

  • charAt(position)
  • charCodeAt(position)
  • Propiedad access [ ]

Cadena charAt() de JavaScript

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

Ejemplo

let text = "HELLO WORLD";
let char = text.charAt(0);
Try it Yourself »

Cadena de JavaScript charCodeAt()

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

El método devuelve un código UTF-16 (un número entero entre 0 y 65535).

Ejemplo

let text = "HELLO WORLD";
let char = text.charCodeAt(0);
Try it Yourself »

Acceso a propiedades

ECMAScript 5 (2009) permite el acceso a propiedades [ ] en cadenas:

Ejemplo

let text = "HELLO WORLD";
let char = text[0];
Try it Yourself »

Nota

El acceso a la propiedad puede ser un poco impredecible:

  • Hace que las cadenas parezcan matrices (pero no lo son)
  • Si no se encuentra ningún carácter, [ ] devuelve undefined, mientras que charAt() devuelve una cadena vacía.
  • Es de solo lectura. str[0] = "A" no da ningún error (¡pero no funciona!)

Ejemplo

let text = "HELLO WORLD";
text[0] = "A";    // No da ningún error, pero no funciona
Try it Yourself »

Convertir una cadena en una matriz

Si desea trabajar con una cadena como una matriz, puede convertirla en una matriz.

División de cadenas en JavaScript ()

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

Ejemplo

text.split(",")    // Dividir por comas
text.split(" ")    // Dividido en espacios
text.split("|")    // División en la tubería
Try it Yourself »

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

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

Ejemplo

text.split("")
Try it Yourself »

Referencia completa de cadenas

Para obtener una referencia completa de cadenas, visite:

Referencia completa de cadenas de JavaScript.

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

Ponte a prueba con ejercicios

Ejercicio:

Convertir el texto a MAYÚSCULAS:

let txt = "Hello World!";
txt = txt.;