Các chuỗi trong JavaScript có thuộc tính có độ dài như mảng, nhưng chúng không có phương pháp như forEach hoặc reduce.
Điều này có nghĩa là các chuỗi là các đối tượng giống như mảng?
drnugent
1.5009 huy hiệu bạc22 Huy hiệu đồng9 silver badges22 bronze badges
Hỏi ngày 13 tháng 8 năm 2018 lúc 12:04Aug 13, 2018 at 12:04
user1941537user1941537user1941537
5.37713 Huy hiệu vàng48 Huy hiệu bạc84 Huy hiệu đồng13 gold badges48 silver badges84 bronze badges
2
Thuật ngữ "giống như mảng" thường đề cập đến một đối tượng có thuộc tính .length có giá trị nguyên và tương ứng nhiều phần tử được lưu trữ trong các thuộc tính được khóa nguyên, để chúng ta có thể truy cập chúng bằng chỉ mục như một mảng. Chuỗi chắc chắn đáp ứng yêu cầu đó.
Không, chuỗi không có tất cả các phương pháp mà mảng có. Họ không thừa kế từ Array.prototype, chúng không phải là mảng thực sự - chúng chỉ giống như mảng. Tuy nhiên, bạn có thể chuyển đổi một chuỗi một cách tầm thường thành một mảng, bằng ….split('') hoặc bằng Array.from(…).
Đã trả lời ngày 13 tháng 8 năm 2018 lúc 14:01Aug 13, 2018 at 14:01
2
Theo tài liệu, các chức năng này không tồn tại (tài liệu).
Nhưng bạn có thể thêm các chức năng vào nguyên mẫu String
// forEach function String.prototype.forEach = function (f) { for (i=0; i < this.length; ++i) { f(this[i]); } } // reduce function String.prototype.reduce = function (f, start) { result = (start == undefined) ? null : start for(i = 0; i < this.length; ++i) { result += f(this[i]) } return result }Đã trả lời ngày 13 tháng 8 năm 2018 lúc 13:09Aug 13, 2018 at 13:09
ChocolordchocolordChocolord
4933 Huy hiệu bạc12 Huy hiệu đồng3 silver badges12 bronze badges
Trong JavaScript, các chữ cái chuỗi được lưu trữ theo cách được lập chỉ mục, cả nguyên thủy cũng như chuỗi loại đối tượng được lưu trữ trong giá trị được lập chỉ mục của tên tham chiếu chuỗi. Sau đó, một câu hỏi xuất hiện trong tâm trí rằng tại sao chúng ta chuyển đổi chuỗi thành mảng trong javascript, nếu chúng ta muốn sắp xếp các chữ cái, chúng ta cần phương thức sắp xếp mà mảng javascript bao gồm. chứa tất cả các phương thức một mảng chứa. Nếu chúng ta áp dụng phương thức sắp xếp trong chuỗi, nó sẽ đưa ra một lỗi "StringName.sort không phải là một hàm".
Đã trả lời ngày 16 tháng 11 năm 2021 lúc 18:47Nov 16, 2021 at 18:47
Ví dụ
const fruits = ["chuối", "cam", "táo", "xoài"]; quả.includes ("xoài");
fruits.includes("Mango");
Hãy tự mình thử »
Bắt đầu tìm kiếm ở vị trí 3:
const fruits = ["chuối", "cam", "táo", "xoài"]; trái cây.includes ("chuối", 3);
fruits.includes("Banana", 3);
Hãy tự mình thử »
Bắt đầu tìm kiếm ở vị trí 3:
const fruits = ["chuối", "cam", "táo", "xoài"]; trái cây.includes ("chuối", 3);
Định nghĩa và cách sử dụng
Phương thức includes() trả về true nếu một mảng chứa một giá trị được chỉ định.
Phương thức includes() trả về forEach1 nếu không tìm thấy giá trị.
Phương pháp includes() là trường hợp nhạy cảm.
Cú pháp
mảng.includes (phần tử, bắt đầu) | Thông số |
Tham số | Sự mô tả The value to search for. |
yếu tố | Yêu cầu. Giá trị để tìm kiếm. Start position. Default is 0. |
bắt đầu
Tùy chọn. Vị trí khởi động. Mặc định là 0. | Thông số |
Tham số | Sự mô tả |
yếu tố
Yêu cầu. Giá trị để tìm kiếm.
bắt đầu
Tùy chọn. Vị trí khởi động. Mặc định là 0. | Giá trị trả về | Loại hình | Một boolean | true Nếu giá trị được tìm thấy, nếu không forEach1. |
Hỗ trợ trình duyệt | Hỗ trợ trình duyệt | Hỗ trợ trình duyệt | Hỗ trợ trình duyệt | Hỗ trợ trình duyệt |
includes() là tính năng ECMAScript7 (ES7).