Ví dụ về chuỗi con JavaScript – Phương thức Slice, Substr và Substring trong JS


Trong lập trình hàng ngày, chúng ta thường xuyên phải làm việc với chuỗi. May mắn thay, có nhiều phương thức tích hợp sẵn trong JavaScript giúp ích cho chúng ta khi làm việc với mảng, chuỗi và các kiểu dữ liệu khác. Chúng ta có thể sử dụng các phương thức này cho các hoạt động khác nhau như tìm kiếm, thay thế, nối chuỗi, v.v.

Lấy một chuỗi con từ một chuỗi là một trong những thao tác phổ biến nhất trong JavaScript. Trong bài viết này, bạn sẽ học cách lấy một chuỗi con bằng cách sử dụng 3 phương thức tích hợp sẵn khác nhau. Nhưng trước tiên, hãy để tôi giải thích ngắn gọn chuỗi con là gì.

Chuỗi con là gì?

Một chuỗi con là một tập hợp con của một chuỗi khác:

"I am learning JavaScript and it is cool!"  -->  Original String

"I am learning JavaScript"  -->  Substring

"JavaScript is cool!"  -->  Another Substring

Giống như ví dụ trên, trong một số trường hợp chúng ta cần lấy một hoặc nhiều chuỗi con từ một câu hoàn chỉnh hoặc một đoạn văn. Bây giờ hãy xem cách thực hiện điều đó trong JavaScript theo 3 cách khác nhau.

Bạn cũng có thể xem phiên bản video về cách sử dụng ví dụ tại đây:

Đọc thêm  JavaScript toLowerCase() – Cách chuyển đổi chuỗi thành chữ thường và chữ hoa trong JS

1. Phương thức chuỗi con()

Hãy bắt đầu với phương thức chuỗi con(). Phương thức này về cơ bản lấy một phần của chuỗi ban đầu và trả về nó dưới dạng một chuỗi mới. Phương thức chuỗi con mong đợi hai tham số:

string.substring(startIndex, endIndex);
  • bắt đầu Index: đại diện cho điểm bắt đầu của chuỗi con
  • kết thúc Index: đại diện cho điểm kết thúc của chuỗi con (tùy chọn)

Hãy xem cách sử dụng trong một ví dụ. Giả sử rằng chúng ta có chuỗi ví dụ bên dưới:

const myString = "I am learning JavaScript and it is cool!";

Bây giờ nếu chúng ta đặt start Index là 0 và end Index là 10, thì chúng ta sẽ nhận được 10 ký tự đầu tiên của chuỗi gốc:

Ekran-Resmi-2020-03-21-19.17.10
Chỉ số của ký tự đầu tiên luôn là 0

Tuy nhiên, nếu chúng ta chỉ đặt chỉ mục bắt đầu và không có chỉ mục kết thúc cho ví dụ này:

Ekran-Resmi-2020-03-21-19.16.46

Khi đó ta được một xâu con bắt đầu từ ký tự thứ 6 cho đến hết xâu ban đầu.

Một số điểm bổ sung:

  • Nếu start Index = end Index, phương thức chuỗi con trả về một chuỗi rỗng
  • Nếu start Index và end Index đều lớn hơn độ dài của chuỗi, nó sẽ trả về một chuỗi rỗng
  • Nếu start Index > end Index, thì phương thức chuỗi con hoán đổi các đối số và trả về một chuỗi con, giả sử là end Index > start Index

2. Phương thức slice()

Phương thức slice() tương tự như phương thức substring() và nó cũng trả về một chuỗi con của chuỗi ban đầu. Phương thức slice cũng mong đợi hai tham số giống nhau:

string.slice(startIndex, endIndex);
  • bắt đầu Index: đại diện cho điểm bắt đầu của chuỗi con
  • kết thúc Index: đại diện cho điểm kết thúc của chuỗi con (tùy chọn)
Đọc thêm  Các phương pháp JavaScript này sẽ nâng cao kỹ năng của bạn chỉ sau vài phút

Điểm chung của phương thức substring() và slice():

  • Nếu chúng ta không đặt chỉ mục kết thúc, thì chúng ta sẽ nhận được một chuỗi con bắt đầu từ số chỉ mục đã cho cho đến khi kết thúc chuỗi gốc:
Ekran-Resmi-2020-03-22-01.03.15
  • Nếu chúng ta đặt cả start Index và end Index, thì chúng ta sẽ nhận được các ký tự nằm giữa các số chỉ mục đã cho của chuỗi gốc:
Ekran-Resmi-2020-03-22-01.03.43
  • Nếu start Index và end Index lớn hơn độ dài của chuỗi, nó sẽ trả về một chuỗi rỗng

Điểm khác biệt của phương thức slice():

  • Nếu start Index > end Index, phương thức slice() trả về một chuỗi rỗng
  • Nếu start Index là một số âm, thì ký tự đầu tiên bắt đầu từ cuối chuỗi (ngược lại):
Ekran-Resmi-2020-03-22-15.54.09

Ghi chú: Chúng ta cũng có thể sử dụng phương thức slice() cho mảng JavaScript. Bạn có thể tìm thấy ở đây bài viết khác của tôi về phương pháp lát cắt để xem cách sử dụng mảng.

3. Phương thức substr()

Theo các tài liệu của Mozilla, phương thức substr() được coi là một hàm kế thừa và nên tránh sử dụng nó. Nhưng tôi vẫn sẽ giải thích ngắn gọn nó làm gì vì bạn có thể thấy nó trong các dự án cũ hơn.

Phương thức substr() cũng trả về một chuỗi con của chuỗi ban đầu và mong đợi hai tham số là:

string.substring(startIndex, length);
  • bắt đầu Index: đại diện cho điểm bắt đầu của chuỗi con
  • chiều dài: số ký tự được đưa vào (tùy chọn)
Đọc thêm  Cách sử dụng Memoize để lưu trữ kết quả chức năng JavaScript và tăng tốc mã của bạn

Bạn có thể thấy sự khác biệt ở đây: phương thức substr() yêu cầu tham số thứ hai là độ dài thay vì endIndex:

Ekran-Resmi-2020-03-22-00.40.29-2

Trong ví dụ này, về cơ bản, nó đếm 5 ký tự bắt đầu bằng startIndex đã cho và trả về chúng dưới dạng một chuỗi con.

Tuy nhiên, nếu chúng ta không định nghĩa tham số thứ hai, nó sẽ trả về đến cuối chuỗi ban đầu (giống như hai phương thức trước đó):

Ekran-Resmi-2020-03-22-00.40.23

Ghi chú: Cả 3 phương thức đều trả về chuỗi con dưới dạng một chuỗi mới và chúng không thay đổi chuỗi ban đầu.

Gói (lại

Vì vậy, đây là 3 phương pháp khác nhau để lấy chuỗi con trong JavaScript. Có nhiều phương thức tích hợp khác trong JS thực sự giúp chúng ta rất nhiều khi xử lý nhiều thứ khác nhau trong lập trình. Nếu bạn thấy bài đăng này hữu ích, vui lòng chia sẻ nó trên phương tiện truyền thông xã hội.

Nếu bạn muốn tìm hiểu thêm về phát triển web, vui lòng theo dõi tôi trên Youtube!

Cảm ơn bạn đã đọc!



Zik.vn – Biên dịch & Biên soạn Lại

spot_img

Create a website from scratch

Just drag and drop elements in a page to get started with Newspaper Theme.

Buy Now ⟶

Bài viết liên quang

DMCA.com Protection Status