slice(inicio, fin): Extrae una parte de una cadena desde inicio hasta fin (sin incluir fin). Permite índices negativos.substring(inicio, fin): Similar a slice(), pero no permite índices negativos y si inicio > fin, los intercambia.slice() cuando necesitas manejar índices negativos para extraer desde el final de la cadena.substring() si solo trabajas con índices positivos y quieres evitar errores con posiciones invertidas.let texto = "Hola Mundo";
// Usando slice()
console.log(texto.slice(0, 4)); // "Hola"
console.log(texto.slice(-5, -1)); // "Mund" (índices negativos)
// Usando substring()
console.log(texto.substring(0, 4)); // "Hola"
console.log(texto.substring(4, 0)); // "Hola" (intercambia los valores automáticamente)
📌 Diferencia clave: slice() acepta valores negativos, substring() no.