¿Cómo se obtiene la longitud de una cadena en jQuery?
¿Cómo se obtiene la longitud de una cadena en jQuery?
Respuestas:
No necesitas jquery, solo úsalo yourstring.length
. Ver referencia aquí y también aquí .
Actualización :
Para admitir cadenas unicode, la longitud debe calcularse de la siguiente manera:
[..."𠮷"].length
o crear una función auxiliar
function uniLen(s) {
return [...s].length
}
"𠮷".length == 2
. ¿Cómo podemos obtener el número real de caracteres?
La forma más fácil:
$('#selector').val().length
:input
valor
len = $('#selector').is('div') ? "someString".length : 0
y tiene tanto sentido ...
jQuery es una biblioteca de JavaScript.
No necesita usar jQuery para obtener la longitud de una cadena porque es una propiedad básica de objeto de cadena de JavaScript.
somestring.length;
No necesitas usar jquery.
var myString = 'abc';
var n = myString.length;
n será 3.
Una distinción algo importante es si el elemento es una entrada o no. Si una entrada puede usar:
$('#selector').val().length;
de lo contrario, si el elemento es un elemento html diferente, como un párrafo o un elemento de lista div, etc., debe usar
$('#selector').text().length;
$('#selector').html().length
.
En jQuery:
var len = jQuery('.selector').val().length; //or
( var len = $('.selector').val().length;) //- If Element is Text Box
O
var len = jQuery('.selector').html().length; //or
( var len = $('.selector').html().length; ) //- If Element is not Input Text Box
En JS:
var len = str.len;
En algunos casos, String.length puede devolver un valor que es diferente del número real de caracteres visibles en la pantalla (por ejemplo, algunos emojis están codificados por 2 unidades UTF-16):
MDN dice : Esta propiedad devuelve el número de unidades de código en la cadena. UTF-16, el formato de cadena utilizado por JavaScript, usa una sola unidad de código de 16 bits para representar los caracteres más comunes, pero necesita usar dos unidades de código para los caracteres menos utilizados, por lo que es posible que el valor devuelto por la longitud sea no coincide con el número real de caracteres en la cadena .