Cách so sánh hai chuỗi trong JavaScript

Cach So Sanh Hai Chuoi Trong Javascript



[Có một số tình huống mà các nhà phát triển cần so sánh hai chuỗi. Hầu hết các lập trình viên thường mắc lỗi khi cố gắng so sánh các chuỗi của họ trong JavaScript bằng toán tử ==. Toán tử == có một số hạn chế trong trường hợp này vì các loại biến không thể được xác nhận bằng cách sử dụng nó. Vì vậy, bạn có thể cần phải tìm kiếm các phương pháp khác để xử lý tình huống.

Bài viết này sẽ trình bày quy trình so sánh các chuỗi trong JavaScript.







Làm thế nào để so sánh hai chuỗi trong JavaScript?

Để so sánh hai chuỗi JavaScript, hãy sử dụng các phương pháp được liệt kê sau:



Chúng ta hãy kiểm tra hoạt động của từng phương pháp một cách riêng biệt.



Phương pháp 1: So sánh hai chuỗi sử dụng toán tử bình đẳng nghiêm ngặt

Toán tử bình đẳng nghiêm ngặt (===) có thể được sử dụng để xác nhận xem các chuỗi có bằng nhau hay không. Nếu các chuỗi khác nhau, nó trả về false dưới dạng kết quả đầu ra; khác, nó cho đúng. Vì nó là một phương pháp phân biệt chữ hoa chữ thường, trong khi so sánh các chuỗi, nó cũng so sánh trường hợp của các chữ cái, có nghĩa là chữ thường và chữ hoa được coi là khác nhau.





Cú pháp

Sử dụng cú pháp dưới đây để so sánh hai chuỗi bằng cách sử dụng toán tử bình đẳng nghiêm ngặt:

str1 === str2 ;

Đây, “ === ”Toán tử sẽ so sánh giá trị và kiểu dữ liệu của str1 và str2.



Thí dụ

Trong ví dụ này, chúng ta sẽ so sánh hai chuỗi một là viết hoa và một là viết thường. Để làm như vậy, trước tiên, chúng ta sẽ tạo hai biến có tên “Str1” và “str2” lưu trữ các chuỗi “ LinuxHint ' và ' linuxhint ”:

str1 = 'LinuxHint' ;
str2 = 'linux' ;

Sau đó, gọi “ console.log () 'Để in kết quả cho biết các chuỗi có bằng nhau hay không bằng cách sử dụng' === ' nhà điều hành:

bàn điều khiển. khúc gỗ ( str1 === str2 ) ;

Kết quả hiển thị “ sai ”Chỉ ra rằng các chuỗi không bằng nhau vì toán tử bình đẳng thực hiện so sánh phân biệt chữ hoa chữ thường:

Nếu bạn muốn thực hiện so sánh không phân biệt chữ hoa chữ thường giữa các chuỗi, bạn phải làm theo các phương pháp dưới đây.

Phương pháp 2: So sánh hai chuỗi bằng phương thức localeCompare ()

localeCompare () ”Là một phương pháp được xác định trước bằng JavaScript được sử dụng để so sánh hai chuỗi. Nó thực hiện so sánh chuỗi không phân biệt chữ hoa chữ thường và sử dụng ngôn ngữ hiện tại để so sánh hai chuỗi.

Cú pháp

Làm theo cú pháp được đề cập bên dưới để so sánh hai chuỗi bằng phương thức localeCompare ():

str1. localeCompare ( str2 ) ;

Nơi đây, ' str2 'Là chuỗi sẽ được so sánh với' str1 ”:

Thí dụ

Bây giờ chúng tôi sẽ sử dụng các chuỗi tương tự đã được tạo trong ví dụ trước và sau đó so sánh chúng bằng cách sử dụng “ localeCompare () ”Với sự trợ giúp của toán tử điều kiện:

nếu ( str1. localeCompare ( str2 ) ) {
bàn điều khiển. khúc gỗ ( 'str1 tương đương với str2' ) ;
} khác {
bàn điều khiển. khúc gỗ ( 'str1 không bằng str2' ) ;
}

Như bạn có thể thấy rằng đầu ra cho biết các chuỗi bằng nhau vì phương thức so sánh so sánh phân biệt chữ hoa chữ thường:

Hãy chuyển sang phương pháp tiếp theo!

Phương pháp 3: So sánh hai chuỗi bằng RegExp với phương thức test ()

Có một phương pháp khác để so sánh hai chuỗi cũng thực hiện so sánh không phân biệt chữ hoa chữ thường được gọi là “ RegExp ”Với sự trợ giúp của“ kiểm tra() ' phương pháp. Nó kiểm tra sự bình đẳng của các chuỗi dựa trên regex đã xác định. Phương thức test () sẽ chấp nhận một chuỗi làm đối số để so sánh.

Cú pháp

Làm theo cú pháp đã cho cho phương thức test () bằng RegEx với phương thức test ():

regPattern. kiểm tra ( str2 ) ;

Nơi đây, ' str2 'Là chuỗi sẽ được so sánh với' regPattern ”:

Thí dụ

Bây giờ, chúng ta sẽ tạo một phiên bản của RegExp bằng cách truyền một chuỗi “ str1 'Và một regex' gi 'Chỉ ra so sánh không phân biệt chữ hoa chữ thường và lưu trữ nó trong một biến' regPattern ”:

regPattern = Mới RegExp ( str1 , 'gi' ) ;

Sau đó, chúng tôi sẽ gọi “ kiểm tra() 'Bằng cách chuyển chuỗi' str2 ”Như một lập luận.

năm = regPattern. kiểm tra ( str2 ) ;

Sau đó, sử dụng câu lệnh điều kiện để xác minh xem các chuỗi có bằng nhau hay không:

nếu ( năm ) {
bàn điều khiển. khúc gỗ ( 'str1 tương đương với str2' ) ;
} khác {
bàn điều khiển. khúc gỗ ( 'str1 không bằng str2' ) ;
}

Đầu ra

Nếu bạn muốn so sánh một chuỗi với một chuỗi khác như một chuỗi con, bạn phải làm theo phần bên dưới.

Phương pháp 4: So sánh hai chuỗi bằng cách sử dụng phương thức include ()

Để xác định xem chuỗi có phải là chuỗi con của chuỗi khác hay không, JavaScript cung cấp một phương thức xác định trước được gọi là “ bao gồm() ' phương pháp. Nó nhận một chuỗi làm đối số và đưa ra giá trị boolean “ thật ”Nếu nó tồn tại trong chuỗi; nếu không, nó trả về “ sai ”.

Cú pháp

Thực hiện theo phương pháp được cung cấp bên dưới để sử dụng phương thức include ():

str1. bao gồm ( str2 ) ;

Nơi đây, ' str2 ”Là chuỗi kiểm tra xem nó có được bao gồm hay một phần của“ str1 ”:

Thí dụ

Ở đây, trước tiên, chúng ta sẽ tạo hai chuỗi, “Str1” và “str2” và kiểm tra xem chuỗi thứ hai có phải là chuỗi con của chuỗi đầu tiên hay không:

str1 = 'LinuxHint' ;
str2 = 'Trong' ;

Đối với điều này, hãy gọi Phương thức 'include ()' bằng cách truyền 'str2' như một đối số:

bàn điều khiển. khúc gỗ ( str1. bao gồm ( str2 ) ) ;

Đầu ra cho “ thật 'Chỉ ra rằng' str2 ”Là một phần của“ str1 ”:

Chúng tôi đã biên soạn tất cả các phương pháp để so sánh hai chuỗi JavaScript.

Sự kết luận

Để so sánh hai chuỗi JavaScript, bạn có thể sử dụng phương thức localeCompare (), toán tử bình đẳng nghiêm ngặt, RegEx với phương thức test () hoặc phương thức include (). Toán tử bình đẳng nghiêm ngặt thực hiện so sánh phân biệt chữ hoa chữ thường trong khi phương thức test () và phương thức localeCompare () thực hiện so sánh phân biệt chữ hoa chữ thường. Cuối cùng, phương thức include () kiểm tra chuỗi như một chuỗi con trong một chuỗi khác. Trong bài viết này, chúng tôi đã trình bày các phương pháp so sánh hai chuỗi trong JavaScript với các ví dụ thích hợp.