Làm thế nào để bạn có được độ dài của một chuỗi trong jQuery?
Làm thế nào để bạn có được độ dài của một chuỗi trong jQuery?
Câu trả lời:
Bạn không cần jquery, chỉ cần sử dụng yourstring.length
. Xem tài liệu tham khảo ở đây và cũng ở đây .
Cập nhật :
Để hỗ trợ các chuỗi unicode, độ dài cần được tính như sau:
[..."𠮷"].length
hoặc tạo một chức năng phụ trợ
function uniLen(s) {
return [...s].length
}
"𠮷".length == 2
. Làm thế nào chúng ta có thể có được số lượng nhân vật thực tế?
Cách dễ nhất:
$('#selector').val().length
:input
giá trị
len = $('#selector').is('div') ? "someString".length : 0
và có ý nghĩa nhiều như vậy ...
jQuery là một thư viện JavaScript.
Bạn không cần sử dụng jQuery để có được độ dài của chuỗi vì đây là thuộc tính đối tượng chuỗi JavaScript cơ bản.
somestring.length;
Bạn không cần phải sử dụng jquery.
var myString = 'abc';
var n = myString.length;
n sẽ là 3.
Một sự khác biệt quan trọng là nếu phần tử là một đầu vào hay không. Nếu một đầu vào bạn có thể sử dụng:
$('#selector').val().length;
mặt khác, nếu phần tử là một phần tử html khác như một đoạn văn hoặc danh sách div, v.v., bạn phải sử dụng
$('#selector').text().length;
$('#selector').html().length
.
Trong jQuery:
var len = jQuery('.selector').val().length; //or
( var len = $('.selector').val().length;) //- If Element is Text Box
HOẶC LÀ
var len = jQuery('.selector').html().length; //or
( var len = $('.selector').html().length; ) //- If Element is not Input Text Box
Trong JS:
var len = str.len;
Trong một số trường hợp, String.length có thể trả về một giá trị khác với số ký tự thực tế hiển thị trên màn hình (ví dụ: một số biểu tượng cảm xúc được mã hóa bởi 2 đơn vị UTF-16):
MDN nói : Thuộc tính này trả về số lượng đơn vị mã trong chuỗi. UTF-16, định dạng chuỗi được sử dụng bởi JavaScript, sử dụng một đơn vị mã 16 bit duy nhất để biểu thị các ký tự phổ biến nhất, nhưng cần sử dụng hai đơn vị mã cho các ký tự ít được sử dụng, do đó, giá trị được trả về theo độ dài không khớp với số lượng ký tự thực tế trong chuỗi .