--- title: String.prototype.substr() slug: Web/JavaScript/Reference/Global_Objects/String/substr tags: - JavaScript - Método(2) - Prototipo - String translation_of: Web/JavaScript/Reference/Global_Objects/String/substr original_slug: Web/JavaScript/Referencia/Objetos_globales/String/substr ---
{{JSRef("Objetos_globales", "String")}}
String.prototype.substr(…)
no está estrictamente obsoleto (como en "eliminado de los estándares web"), se define en el anexo B de la norma ECMA-262, cuya introducción establece:
... Todas las características y comportamientos del lenguaje especificados en este anexo tienen una o más características indeseables y, en ausencia de uso heredado, se eliminarían de esta especificación. ... ... Los programadores no deben usar ni asumir la existencia de estas características y comportamientos al escribir un nuevo código ECMAScript.
El método substr()
devuelve los caracteres de una cadena que comienzan en una localización especificada y de acuerdo al número de caracteres que se especifiquen.
cadena.substr(inicio[, longitud])
inicio
longCad + inicio
donde longCad
es la longitud de la cadena (por ejemplo, si inicio
es -3 se trata como longCad - 3
).longitud
inicio
hasta el final de la cadena serán extraidos.Una nueva cadena que contiende la sección extraída de la cadena dada. Sí la longitud es 0 o un número negativo, retorna la cadena vacía.
inicio
es el índice de un carácter. El índice del primer carácter es 0, y el índice del último carácter es la longitud de la cadena menos 1. substr
comienza extrayendo caracteres a partir de inicio
y recolecta longitud
caracteres (a menos que se alcance primero el final de la cadena, en cuyo caso devuelve menos).
Si inicio
es positivo y es mayor o igual que la longitud de la cadena, substr()
devuelve una cadena vacía.
Si inicio
es negativo, substr()
lo usa como un índice de carácter desde el final de la cadena. Si inicio
es negativo y abs(inicio)
es mayor que la longitud de la cadena, substr
usa 0 como índice inical. Nota: el uso descrito de valores negativos del argumento inicio
no es soportado por Microsoft JScript .
Si longitud
es 0 o negativa, substr
devuelve una cadena vacía. Si se omite longitud
, inicio
extrae caracteres hasta el final de la cadena.
substr()
var cadena = "abcdefghij"; console.log("(1,2): " + cadena.substr(1,2));// '(1, 2): bc'
console.log("(-3,2): " + cadena.substr(-3,2));// '(-3, 2): hi'
console.log("(-3): " + cadena.substr(-3)); // '(-3): hij' console.log("(1): " + cadena.substr(1)); // '(1): bcdefghij' console.log("(-20, 2): " + cadena.substr(-20,2)); // '(-20, 2): ab' console.log("(20, 2): " + cadena.substr(20,2)); // '(20, 2): '
Este script muestra:
(1,2): bc (-3,2): hi (-3): hij (1): bcdefghij (-20, 2): ab (20, 2):