Comment obtenir la longueur d'une chaîne dans jQuery?
Comment obtenir la longueur d'une chaîne dans jQuery?
Réponses:
Vous n'avez pas besoin de jquery, utilisez-le yourstring.length
. Voir référence ici et aussi ici .
Mise à jour :
Pour prendre en charge les chaînes unicode, la longueur doit être calculée comme suit:
[..."𠮷"].length
ou créer une fonction auxiliaire
function uniLen(s) {
return [...s].length
}
"𠮷".length == 2
. Comment obtenir le nombre réel de caractères?
La façon la plus simple:
$('#selector').val().length
:input
valeur
len = $('#selector').is('div') ? "someString".length : 0
et est tout aussi logique ...
jQuery est une bibliothèque JavaScript.
Vous n'avez pas besoin d'utiliser jQuery pour obtenir la longueur d'une chaîne, car il s'agit d'une propriété d'objet de chaîne JavaScript de base.
somestring.length;
Vous n'avez pas besoin d'utiliser jquery.
var myString = 'abc';
var n = myString.length;
n sera 3.
Une distinction quelque peu importante est de savoir si l'élément est une entrée ou non. Si une entrée vous pouvez utiliser:
$('#selector').val().length;
sinon, si l'élément est un élément html différent comme un paragraphe ou un élément de liste div, etc., vous devez utiliser
$('#selector').text().length;
$('#selector').html().length
.
Dans jQuery:
var len = jQuery('.selector').val().length; //or
( var len = $('.selector').val().length;) //- If Element is Text Box
OU
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;
Dans certains cas, String.length peut renvoyer une valeur différente du nombre réel de caractères visibles à l'écran (par exemple, certains emojis sont encodés par 2 unités UTF-16):
MDN dit : Cette propriété renvoie le nombre d'unités de code dans la chaîne. UTF-16, le format de chaîne utilisé par JavaScript, utilise une seule unité de code 16 bits pour représenter les caractères les plus courants, mais doit utiliser deux unités de code pour les caractères moins couramment utilisés, il est donc possible que la valeur renvoyée par la longueur soit ne correspond pas au nombre réel de caractères dans la chaîne .