Hướng dẫn can you use == to compare strings in javascript? - bạn có thể sử dụng == để so sánh các chuỗi trong javascript không?
Cách chính xác để kiểm tra sự bình đẳng giữa các chuỗi trong JavaScript là gì? Show
Khi được hỏi ngày 27 tháng 8 năm 2010 lúc 17:37Aug 27, 2010 at 17:37
8 Luôn luôn cho đến khi bạn hoàn toàn hiểu được sự khác biệt và ý nghĩa của việc sử dụng các toán tử 2 và 3, hãy sử dụng toán tử 3 vì nó sẽ cứu bạn khỏi các lỗi và WTF tối nghĩa (không quá khó tính). Toán tử 2 "thông thường" có thể có kết quả rất bất ngờ do tính toán loại bên trong, do đó, sử dụng 3 luôn là cách tiếp cận được khuyến nghị.Để hiểu rõ hơn về điều này, và các phần "tốt so với xấu" khác của JavaScript đọc về ông Douglas Crockford và công việc của ông. Có một cuộc nói chuyện tuyệt vời của Google Tech, nơi anh ấy tóm tắt rất nhiều thông tin tốt: http://www.youtube.com/watch?v=hqvtijbzook Update: Sê -ri Bạn không biết JS của Kyle Simpson là tuyệt vời (và miễn phí đọc trực tuyến). Loạt phim đi vào các khu vực thường bị hiểu lầm của ngôn ngữ và giải thích "phần xấu" mà Crockford gợi ý bạn tránh. Bằng cách hiểu chúng, bạn có thể sử dụng chúng đúng cách và tránh những cạm bẫy. Cuốn sách "Up & Go" bao gồm một phần về bình đẳng, với bản tóm tắt cụ thể này về thời điểm sử dụng các toán tử lỏng lẻo ( 2) so với các toán tử nghiêm ngặt ( 3):
Tôi vẫn giới thiệu cuộc nói chuyện của Crockford cho các nhà phát triển, những người không muốn đầu tư thời gian để thực sự hiểu JavaScript, đó là lời khuyên tốt cho một nhà phát triển chỉ thỉnh thoảng làm việc trong JavaScript. Đã trả lời ngày 27 tháng 8 năm 2010 lúc 17:39Aug 27, 2010 at 17:39
StwstwSTW 43.7K17 Huy hiệu vàng106 Huy hiệu bạc159 Huy hiệu đồng17 gold badges106 silver badges159 bronze badges 18 Nếu bạn biết chúng là chuỗi, thì không cần phải kiểm tra loại.
Tuy nhiên, lưu ý rằng các đối tượng chuỗi sẽ không bằng nhau.
sẽ trả về sai. Gọi phương thức valueOf () để chuyển đổi nó thành nguyên thủy cho các đối tượng chuỗi,
sẽ trả về đúng Đã trả lời ngày 27 tháng 8 năm 2010 lúc 17:40Aug 27, 2010 at 17:40
AnuraganuragAnurag 139K36 Huy hiệu vàng220 Huy hiệu bạc257 Huy hiệu Đồng36 gold badges220 silver badges257 bronze badges 6 Chỉ một bổ sung cho câu trả lời: nếu tất cả các phương thức này trả về sai, ngay cả khi các chuỗi có vẻ bằng nhau, có thể có một khoảng trắng ở bên trái và hoặc phải của một chuỗi. Vì vậy, chỉ cần đặt một 1 ở cuối chuỗi trước khi so sánh:
Tôi đã mất hàng giờ cố gắng tìm ra những gì sai. Hy vọng điều này sẽ giúp ích cho ai đó! Đã trả lời ngày 2 tháng 5 năm 2017 lúc 13:41May 2, 2017 at 13:41
Akelecakelecakelec 3.5973 Huy hiệu vàng41 Huy hiệu bạc38 Huy hiệu Đồng3 gold badges41 silver badges38 bronze badges 8 Bạn có thể sử dụng 2 hoặc 3 nhưng lần cuối cùng hoạt động theo cách đơn giản hơn (SRC)a == B (và phủ định của nó! =) (and its negation !=) A === B (và phủ định của nó! ==) (and its negation !==) Đã trả lời ngày 3 tháng 8 năm 2020 lúc 19:44Aug 3, 2020 at 19:44
Kamil Kiełczewskikamil KiełczewskiKamil Kiełczewski 77.6K27 Huy hiệu vàng341 Huy hiệu bạc319 Huy hiệu đồng27 gold badges341 silver badges319 bronze badges 5 Điều dẫn tôi đến câu hỏi này là 4 và 5Kiểm tra trường hợp của tôi
và tiêu đề là 6
Đã trả lời ngày 27 tháng 7 năm 2016 lúc 10:52Jul 27, 2016 at 10:52
2 Thực tế có hai cách trong đó các chuỗi có thể được thực hiện trong JavaScript.
Vì vậy, cách tốt nhất để kiểm tra bình đẳng là sử dụng toán tử 3 vì nó kiểm tra giá trị cũng như loại của cả hai toán hạng.Nếu bạn muốn kiểm tra sự bình đẳng giữa hai đối tượng thì sử dụng 4 là cách chính xác.
Đã trả lời ngày 2 tháng 5 năm 2015 lúc 19:11May 2, 2015 at 19:11
AbhishekabhishekAbhishek 1.1961 Huy hiệu vàng8 Huy hiệu bạc12 Huy hiệu đồng1 gold badge8 silver badges12 bronze badges Chuỗi 5 có thể được kiểm tra bằng thủ thuật 6.
Dunc 17.8K6 Huy hiệu vàng83 Huy hiệu bạc99 Huy hiệu Đồng6 gold badges83 silver badges99 bronze badges Đã trả lời ngày 4 tháng 7 năm 2018 lúc 12:33Jul 4, 2018 at 12:33
Muhammad Usmanmuhammad UsmanMuhammad Usman 7951 Huy hiệu vàng10 Huy hiệu bạc18 Huy hiệu đồng1 gold badge10 silver badges18 bronze badges 2 So sánh nghiêm ngặtĐể thực hiện so sánh đơn giản, hãy sử dụng 3 để kiểm tra sự bình đẳng nghiêm ngặt. Như những người khác đã nói, điều này có lợi thế là hiệu quả nhất và giảm cơ hội của mã lỗi hoặc mã không chắc chắn. Nguồn: MDN Web Docs: Bình đẳng nghiêm ngặt. 3 to check for strict equality. As others stated, this has the advantages of being most efficient and reducing the chances of buggy or uncertain code. Source: MDN Web Docs: Strict Equality.
So sánh theo thứ tự chữ cáiNếu bạn muốn so sánh hai chuỗi để biết một chuỗi có đến trước hay sau một chuỗi khác, dựa trên việc sắp xếp tự nhiên, hãy sử dụng các toán tử 8, 9, 0 và 1. Nguồn: MDN WebDocs cho 8, 9, 0 và 1.
Đã trả lời ngày 26 tháng 5 năm 2021 lúc 15:47May 26, 2021 at 15:47
HoldoffhungerHolderoffhungerHoldOffHunger Phim thương hiệu vàng 17K893 Huy hiệu bạc124 Huy hiệu đồng8 gold badges93 silver badges124 bronze badges Xem xét rằng cả hai chuỗi có thể rất lớn, có 2 cách tiếp cận chính 6 và 7Tôi đã đề xuất chức năng này 0Đã trả lời ngày 25 tháng 2 năm 2020 lúc 10:25Feb 25, 2020 at 10:25
NagibabanagibabaNagibaba 3,5241 Huy hiệu vàng32 Huy hiệu bạc39 Huy hiệu đồng1 gold badge32 silver badges39 bronze badges Đối với các chuỗi, chúng tôi có một phương pháp được hỗ trợ 8 rất tiện dụng trong so sánh chuỗi. IMO, chúng ta chỉ nên sử dụng nó và không cần phải làm phức tạp công cụ.Usage: 1Đã trả lời ngày 7 tháng 8 lúc 8:17Aug 7 at 8:17
Cũng xem xét rằng 9.Đã trả lời ngày 19 tháng 4 lúc 20:09Apr 19 at 20:09
grssnbchrgrssnbchrgrssnbchr 2.8456 huy hiệu vàng35 huy hiệu bạc69 huy hiệu đồng6 gold badges35 silver badges69 bronze badges Bạn có thể sử dụng == khi so sánh các chuỗi không?Bạn không nên sử dụng == (toán tử bình đẳng) để so sánh các chuỗi này vì chúng so sánh tham chiếu của chuỗi, tức là chúng có cùng một đối tượng hay không.Mặt khác, phương thức bằng () so sánh liệu giá trị của các chuỗi có bằng nhau hay không là chính đối tượng. because they compare the reference of the string, i.e. whether they are the same object or not. On the other hand, equals() method compares whether the value of the strings is equal, and not the object itself.
Bạn có thể sử dụng toán tử == với chuỗi không?Trong C, các giá trị chuỗi (bao gồm các chữ cái) được biểu diễn dưới dạng mảng char theo sau là 0 Terminator và bạn không thể sử dụng toán tử == để so sánh các nội dung mảng;Ngôn ngữ đơn giản là không xác định hoạt động.you cannot use the == operator to compare array contents; the language simply doesn't define the operation.
Hai chuỗi có thể được so sánh với == Biểu tượng?Người ta có thể sử dụng các toán tử == để so sánh tham chiếu (so sánh địa chỉ) và phương thức .equals () để so sánh nội dung. equals() method for content comparison. |