length define array javascript string utilities

define - javascript string substring



StringUtils en javascript (4)

Estoy buscando una biblioteca js como StringUtils de commons-lang en java, que contiene muchos métodos comunes para operar cadenas.

Como:

  • IsEmpty / IsBlank - comprueba si una cadena contiene texto
  • Recortar / Franja: elimina los espacios en blanco iniciales y finales
  • Igual a - compara dos cadenas null-safe
  • startsWith: verifica si una cadena comienza con un prefijo null-safe
  • endsWith - verifica si una cadena termina con un sufijo nulo-seguro
  • IndexOf / LastIndexOf / Contains - verificaciones de índice de seguridad nulas
  • IndexOfAny / LastIndexOfAny / IndexOfAnyBut / LastIndexOfAnyBut - índice de cualquiera de un conjunto de cadenas
  • ContainsOnly / ContainsNone / ContainsAny - does String contiene solo / ninguno / cualquiera de estos caracteres
  • Substring / Left / Right / Mid - extracciones de subcadenas seguras nulas
  • SubstringBefore / SubstringAfter / SubstringBetween - extracción de subcadenas en relación con otras cadenas
  • Dividir / unir: divide una cadena en una serie de subcadenas y viceversa
  • Eliminar / Eliminar: elimina parte de una cadena
  • Reemplazar / Superponer: busca una cadena y reemplaza una cadena por otra
  • Chomp / Chop - elimina la última parte de una cadena
  • LeftPad / RightPad / Center / Repeat - rellena una cadena
  • UpperCase / LowerCase / SwapCase / Capitalize / Uncapitalize - cambia el caso de una cadena
  • CountMatches: cuenta el número de apariciones de una cadena en otra
  • IsAlpha / IsNumeric / IsWhitespace / IsAsciiPrintable - comprueba los caracteres en una cadena
  • DefaultString - protege contra una cadena de entrada nula
  • Reverse / ReverseDelimited - invierte una cadena
  • Abreviatura: abrevia una cadena usando puntos suspensivos

Será mejor si contiene otros métodos para arreglos / fecha, etc.


Aquí vamos:

Esta vacio

str.length === 0

Está en blanco

str.trim().length === 0

Recortar

str.trim()

Es igual a

str1 === str2

comienza con

str.indexOf( str2 ) === 0

Índice de

str.indexOf( str2 )

LastIndexOf

str.lastIndexOf( str2 )

Contiene

str.indexOf( str2 ) !== -1

Subcadena

str.substring( start, end )

Izquierda

str.slice( 0, len )

Medio

str.substr( i, len )

Derecha

str.slice( -len, str.length )

Y así sucesivamente ... (¿Debo continuar?)


Estoy cambiando constantemente entre el backend de Java y el frontend de JavaScript, por lo que para mí tiene mucho sentido usar los métodos de StringUtils a ciegas y ni siquiera pensar en ello. Sería genial si alguien se tomara el tiempo de portar todos los métodos de Apache StringUtils en un JavaScript ;-)

Aquí está mi contribución:

String.prototype.startsWith = function(prefix) { return this.indexOf(prefix,0) === 0; }; String.prototype.endsWith = function(suffix) { return this.indexOf(suffix, this.length - suffix.length) !== -1; }; String.prototype.substringBefore = function(str) { var idx = this.indexOf(str); if( idx!==-1 ) { return this.substr(0,idx); } return this; }; String.prototype.substringBeforeLast = function(str) { var idx = this.lastIndexOf(str); if( idx!==-1 ) { return this.substr(0,idx); } return this; }; String.prototype.substringAfter = function(str) { var idx = this.indexOf(str); if( idx!==-1 ) { return this.substr(idx+str.length); } return this; }; String.prototype.substringAfterLast = function(str) { var idx = this.lastIndexOf(str); if( idx!==-1 ) { return this.substr(idx+str.length); } return this; }; // left pad with spaces (or the specified character) to this length String.prototype.leftPad = function (length,c) { c = c || " "; if( length <= this.length ) return this; return new Array(length-this.length+1).join(c) + this; }; // right pad with spaces (or the specified character) to this length String.prototype.rightPad = function (length,c) { c = c || " "; if( length <= this.length ) return this; return this + new Array(length-this.length+1).join(c); };



Utilice los métodos básicos de Javascript y JQuery para DOM y moment.js para las fechas.

Lea esto: Utils library si está buscando compatibilidad entre navegadores.

¡O también puedes escribir tu propio apache-lang similar a apache!