Trong hướng dẫn này, bạn sẽ tìm hiểu các cách khác nhau để chia một chuỗi thành các chuỗi con và khi nào mỗi phương thức hữu ích
Có thể dễ dàng thao tác các chuỗi trong JavaScript cho các mục đích khác nhau — sử dụng các phương thức gốc có sẵn trong ngôn ngữ. Gần đây, chúng tôi đã giới thiệu cách chuyển đổi số thành chuỗi và cách chuyển đổi chuỗi thành số trong JavaScript
Một cách khác mà một chuỗi có thể được thao tác là trích xuất các phần của nó để sử dụng cho mục đích khác. Ví dụ: bạn có thể có một URL đầy đủ nhưng chỉ muốn trích xuất phần băm. Hoặc bạn có thể có một danh sách các mục được phân tách bằng dấu phẩy và muốn sử dụng riêng từng mục này
Tách một Chuỗi thành các Chuỗi con Sử dụng substring[]
Tất cả các chuỗi trong JavaScript đều có phương thức
const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
3. Phương pháp này có thể được sử dụng để truy xuất một chuỗi con tại các chỉ số cụ thểconst url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
3 chấp nhận hai tham số. Cái đầu tiên là bắt buộc và cho biết chỉ mục mà chuỗi con bắt đầu tại. Thứ hai là tùy chọn và cho biết chỉ mục mà chuỗi con kết thúc tại. Nếu tham số thứ hai bị bỏ qua, chuỗi con sẽ bắt đầu tại chỉ mục được cung cấp dưới dạng tham số đầu tiên và tiếp tục cho đến khi kết thúc chuỗiĐiều quan trọng cần lưu ý là tham số đầu tiên là chỉ mục dựa trên 0, nghĩa là ký tự đầu tiên ở chỉ mục
const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
5, ký tự thứ hai ở chỉ mục const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
6, v.v. Một điều quan trọng khác cần lưu ý là tham số thứ hai lớn hơn chỉ mục mà bạn muốn chuỗi con kết thúc tại. Ví dụ: nếu bạn muốn chuỗi kết thúc ở chỉ mục const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
7, bạn cung cấp const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
8 cho tham số thứ haiVí dụ
const a = 'Bytes and bits';
const b = a.substring[10, 13];
console.log[b]; // "bit"
console.log[a]; // "Bytes and bits"
Trong ví dụ này,
const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
3 được sử dụng trên biến const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
0 để truy xuất một chuỗi con. Chuỗi con bắt đầu tại chỉ số const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
1 và kết thúc tại chỉ số const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
8. Giá trị trả về là const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
3. Lưu ý rằng const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
3 trả về chuỗi con mà không làm thay đổi giá trị của biến được sử dụng trên đóXem Bút
Sử dụng chuỗi con để phân tách chuỗi theo SitePoint [@SitePoint]
trên CodePen.
Lấy chỉ số
Trong hầu hết các trường hợp, bạn sẽ không biết chỉ số bắt đầu hoặc kết thúc của chuỗi con khi viết mã. Chỉ mục có thể dựa trên các đầu vào hoặc biến khác
Trong những trường hợp đó, bạn có thể sử dụng phương pháp
const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
5. Phương thức này trả về chỉ mục của một chuỗi con trong một chuỗi nếu nó xuất hiện trong đó. Nếu chuỗi con không tồn tại trong chuỗi, nó sẽ trả về const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
6Khi bạn truy xuất chỉ mục bằng cách sử dụng
const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
5, bạn có thể truy xuất chuỗi conVí dụ
const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
Trong ví dụ này, bạn truy xuất chỉ số của ký tự băm
const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
8 trong biến const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
9. Nếu giá trị của chỉ mục không phải là const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
6, bạn truy xuất chuỗi con từ const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
9 bắt đầu từ chỉ mục của hàm bămBạn có thể dùng thử trong bản demo CodePen sau
Xem Bút
Sử dụng chuỗi con với indexOf để phân tách chuỗi theo SitePoint [@SitePoint]
trên CodePen.
Tách một chuỗi thành các chuỗi con bằng cách sử dụng split[]
Một cách hữu ích khác để lấy một chuỗi con từ một chuỗi là phương thức
const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
22. Nếu chuỗi của bạn là một danh sách các mục được phân tách bằng dấu phân cách, bạn có thể sử dụng phương thức const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
22 để tách chuỗi thành một mảng các chuỗi con dựa trên dấu phân cáchconst url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
22 chấp nhận hai tham số tùy chọn. Tham số đầu tiên là dấu phân cách nên được sử dụng để xác định cách phân tách chuỗi. Nếu không có gì được cung cấp, một mảng được trả về với một mục là toàn bộ chuỗiTham số thứ hai là một số giới hạn số chuỗi con được trả về trong mảng. Nếu được cung cấp, chuỗi sẽ được phân tách trên dấu phân cách cho đến khi đạt đến giới hạn và phần còn lại của văn bản trong chuỗi sẽ bị loại bỏ khỏi mảng
Ví dụ
const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
2Trong ví dụ này,
const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
22 được sử dụng trên một chuỗi chứa danh sách các tên thương hiệu ô tô được phân tách bằng dấu phân cách const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
26. Mảng được trả về chứa mỗi tên thương hiệu ô tô dưới dạng một mục trong mảngLưu ý rằng
const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
22 trả về mảng các chuỗi con mà không ảnh hưởng đến giá trị của chuỗi được sử dụng trên đóVí dụ trực tiếp sau đây minh họa cách một chuỗi được phân tách bằng dấu phẩy có thể được chia thành các mục danh sách
Xem Bút
Sử dụng phân tách để lấy chuỗi con theo SitePoint [@SitePoint]
trên CodePen.
Phần kết luận
Trong hướng dẫn này, bạn đã học cách tách một chuỗi thành các chuỗi con bằng các phương thức
const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
3 và const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
22const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
3 rất hữu ích khi bạn muốn truy xuất một chuỗi con từ một chuỗi tại một chỉ mục cụ thể. Bạn có thể sử dụng nó với const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
5 để truy xuất chỉ mục bắt đầu hoặc kết thúc của chuỗi conMặt khác,
const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
22 rất hữu ích khi bạn có một chuỗi chứa danh sách các mục được phân tách bằng dấu phân cách, chẳng hạn như dấu phẩy. Sau đó, bạn có thể chia chuỗi thành một mảng các chuỗi con bằng cách sử dụng const url = '//sitepoint.com#chapter_1';
const hash = url.indexOf['#'];
if [hash !== -1] {
console.log[url.substring[hash]]; // "#chapter_1"
}
22Nếu bạn thấy bài viết này hữu ích, bạn cũng có thể thích những điều sau đây
- Học cách viết mã bằng JavaScript
- Cách học JavaScript nhanh. Sáu thủ thuật tư duy đơn giản
- Hơn 25 kỹ thuật mã hóa tốc ký JavaScript
- ES6 đang hoạt động. Phương pháp số mới
- ES6 đang hoạt động. Phương thức chuỗi mới - Chuỗi. nguyên mẫu. *
- Giá trị thật và sai. Khi tất cả không bình đẳng trong JavaScript
Chia sẻ bài viết này
Dianne Pena
Dianne là biên tập viên bản tin của SitePoint. Cô ấy đặc biệt thích tìm hiểu về JavaScript, CSS và các công nghệ front-end