Thuộc tính length trong JavaScript
Trần Thị Vân
- 961
- 30/08/2025
Chức năng của Thuộc tính length trong JavaScript
Thuộc tính length trong JavaScript dùng để đếm số ký tự của một chuỗi và đếm số phần tử của một mảng, trong một chuỗi 1 khoảng trắng vẫn tính là 1 ký tự và ký tự có dấu vẫn tính là 1 ký tự.
Cú pháp của Thuộc tính length trong JavaScript
Đếm số ký tự trong chuỗi
chuoigoc.length;
chuoigoc: Chuỗi gốc.
Đếm số phần tử trong mảng
mang.length;
mang: Mảng.
Code Thuộc tính length trong JavaScript
<script>
// Đếm số ký tự của chuỗi
document.write("<b>Đếm số ký tự của chuỗi</b><br>");
var chuoigoc = "Web Mới";
var dodai = chuoigoc.length;
document.write(dodai+"<br>");
// Đếm số phần tử của mảng
document.write("<b>Đếm số phần tử của mảng</b><br>");
var mang = ["Vân","Lực","Quỳnh","Dung"];
var sophantu = mang.length;
document.write(sophantu+"<br>");
</script>
Kết quả:
Đếm số ký tự của chuỗi
7
Đếm số phần tử của mảng
4
Lưu ý khi sử dụng thuộc tính length trong JavaScript
Thuộc tính length khá đơn giản nhưng kết quả nhận được có thể khác với suy nghĩ ban đầu nếu dữ liệu chứa khoảng trắng, ký tự đặc biệt hoặc mảng có phần tử bị bỏ trống. Hiểu rõ các trường hợp này giúp bạn xử lý chuỗi và mảng chính xác hơn.
length đếm khoảng trắng như thế nào?
Với chuỗi, length vẫn tính các khoảng trắng là ký tự. Vì vậy, chuỗi có thêm khoảng trắng ở đầu, cuối hoặc giữa sẽ có độ dài lớn hơn phần nội dung mà người dùng nhìn thấy.
Điều này đặc biệt đáng lưu ý khi kiểm tra dữ liệu nhập từ biểu mẫu. Nếu mục tiêu là xác định người dùng có nhập nội dung thực sự hay không, chỉ kiểm tra length có thể dẫn đến kết quả sai khi chuỗi chỉ chứa khoảng trắng.
Trong trường hợp này, có thể loại bỏ khoảng trắng ở hai đầu chuỗi trước khi kiểm tra độ dài bằng trim().
length hoạt động với chuỗi Unicode và ký tự đặc biệt
Không phải lúc nào một ký tự mà người dùng nhìn thấy cũng tương ứng với một đơn vị được length tính riêng. JavaScript sử dụng chuỗi UTF-16, vì vậy một số ký tự Unicode có thể chiếm nhiều hơn một đơn vị mã.
Do đó, với emoji hoặc một số ký tự Unicode đặc biệt, kết quả của length có thể lớn hơn số ký tự mà người dùng cảm nhận bằng mắt. Đây là điểm cần lưu ý khi xây dựng chức năng giới hạn độ dài nội dung hiển thị cho người dùng.
length của mảng có thể khác số phần tử thực tế
Với mảng, length biểu thị chỉ số lớn nhất cộng một, không phải lúc nào cũng phản ánh chính xác số phần tử đang chứa dữ liệu. Mảng có thể có các vị trí bị bỏ trống nhưng length vẫn tính đến những vị trí đó.
Chẳng hạn, việc tạo mảng có một phần tử ở vị trí chỉ số lớn hơn sẽ làm length tăng theo vị trí đó, dù các vị trí trước đó chưa có giá trị.
const items = [];
items[3] = "JavaScript";
console.log(items.length); // 4
Vì vậy, nếu cần biết số phần tử thực sự có dữ liệu, không nên mặc định rằng length luôn là con số tương đương với số phần tử đang tồn tại trong mảng.
Thay đổi length của mảng trong JavaScript
Khác với chuỗi, thuộc tính length của mảng có thể được thay đổi trực tiếp. Khi giảm giá trị này, các phần tử nằm ngoài độ dài mới sẽ bị loại khỏi mảng.
Ngược lại, tăng length sẽ tạo thêm các vị trí trống chứ không tự động tạo ra các phần tử có giá trị cụ thể.
const numbers = [10, 20, 30, 40];
numbers.length = 2;
console.log(numbers); // [10, 20]
Do đó, chỉ nên thay đổi length trực tiếp khi bạn thực sự muốn điều chỉnh kích thước mảng. Nếu chỉ cần đọc số lượng phần tử hoặc duyệt dữ liệu, hãy giữ nguyên giá trị này để tránh vô tình làm mất dữ liệu.
Lời kết
Cảm ơn các bạn đã tham khảo bài viết Thuộc tính length trong JavaScript.
- 0 Bình luận
Email, Điện thoại của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *