כיצד להשוות שתי מחרוזות ב-JavaScript

Kyzd Lhswwt Sty Mhrwzwt B Javascript



[יש כמה מצבים שבהם המפתחים צריכים להשוות בין שתי מחרוזות. רוב המתכנתים טועים לעתים קרובות בניסיון להשוות את המחרוזות שלהם ב-JavaScript באמצעות האופרטור ==. לאופרטור == יש הגבלות מסוימות במצב זה מכיוון שלא ניתן לאמת באמצעותו את סוגי המשתנים. לכן, ייתכן שתצטרך לחפש שיטות אחרות להתמודד עם המצב.

מאמר זה ידגים את ההליך להשוואת מחרוזות ב-JavaScript.







כיצד להשוות שתי מחרוזות ב-JavaScript?

להשוואה בין שתי מחרוזות JavaScript, השתמש בשיטות המפורטות הבאות:



הבה נבחן את העבודה של כל שיטה בנפרד.



שיטה 1: השווה בין שתי מחרוזות באמצעות אופרטור שוויון קפדני

ניתן להשתמש באופרטור השוויון הקפדני (===) כדי לאמת אם המחרוזות שוות או לא. אם המחרוזות שונות, הוא מחזיר false כפלט; אחרת, זה נותן אמת. מכיוון שמדובר בשיטה תלוית רישיות, תוך השוואת מחרוזות, היא משווה גם את גודל האותיות, מה שאומר שהאותיות הקטנות והרישיות נחשבות שונות.





תחביר

השתמש בתחביר להלן להשוואה בין שתי מחרוזות באמצעות אופרטור השוויון הקפדני:

str1 === str2 ;

הנה ה ' === ' האופרטור ישווה את הערך ואת סוג הנתונים של str1 ו-str2.



דוגמא

בדוגמה זו נשווה את שתי המחרוזות שהאחת היא באותיות גדולות והשנייה באותיות קטנות. לשם כך, ראשית, ניצור שני משתנים בשם 'str1' ו-'str2' שמאחסן מחרוזות' לינוקס רמז ' ו' לינוקס ”:

היה str1 = 'LinuxHint' ;
היה str2 = 'לינוקס' ;

לאחר מכן, התקשר ל' console.log() שיטת ' להדפסת התוצאה שאומרת אם המחרוזות שוות או לא באמצעות ' === ' מפעיל:

לְנַחֵם. עֵץ ( str1 === str2 ) ;

הפלט מציג ' שֶׁקֶר ' מה שמציין שהמחרוזות אינן שוות מכיוון שאופרטור השוויון מבצע השוואה תלוית רישיות:

אם אתה רוצה לבצע השוואה לא תלוית רישיות בין מחרוזות, עליך לבצע את השיטות המפורטות להלן.

שיטה 2: השווה שתי מחרוזות באמצעות שיטת localeCompare()

' localeCompare() ” היא שיטה מוגדרת מראש של JavaScript המשמשת להשוואה בין שתי מחרוזות. הוא מבצע השוואת מחרוזות לא תלוית רישיות ומנצל את המקום הנוכחי כדי להשוות בין שתי מחרוזות.

תחביר

בצע את התחביר המוזכר להלן להשוואת שתי מחרוזות באמצעות שיטת localeCompare():

str1. localeCompare ( str2 ) ;

כאן, ' str2 ' היא המחרוזת שתושווה עם ' str1 ”:

דוגמא

כעת נשתמש באותן מחרוזות שכבר נוצרו בדוגמה הקודמת ולאחר מכן נשווה אותן באמצעות ' localeCompare() שיטה בעזרת האופרטור המותנה:

אם ( str1. localeCompare ( str2 ) ) {
לְנַחֵם. עֵץ ( 'str1 שווה ל-str2' ) ;
} אַחֵר {
לְנַחֵם. עֵץ ( 'str1 אינו שווה ל-str2' ) ;
}

כפי שאתה יכול לראות שהפלט מציין שהמחרוזות שוות מכיוון שהשיטה משווה את ההשוואה חסרת רישיות:

בואו נעבור לשיטה הבאה!

שיטה 3: השווה שתי מחרוזות באמצעות RegExp עם שיטת test()

קיימת שיטה נוספת להשוואה בין שתי מחרוזות שמבצעת גם השוואה לא תלוית רישיות בשם ' RegExp 'בעזרת ה' מִבְחָן() ' שיטה. הוא בודק את השוויון של מחרוזות על סמך הביטוי הרגולרי המוגדר. שיטת test() תקבל מחרוזת כארגומנט להשוואה.

תחביר

בצע את התחביר הנתון עבור שיטת test() באמצעות שיטת RegEx with test():

regPattern. מִבְחָן ( str2 ) ;

כאן, ' str2 ' היא המחרוזת שתושווה עם ' regPattern ”:

דוגמא

כעת, ניצור מופע של RegExp על ידי העברת מחרוזת ' str1 ' וביטוי רגולרי ' gi ' שמציין את ההשוואה חסרת רגישות רישיות ומאחסן אותה במשתנה ' regPattern ”:

היה regPattern = חָדָשׁ RegExp ( str1 , 'גי' ) ;

לאחר מכן, נקרא ל' מִבְחָן() שיטת ' על ידי העברת המחרוזת ' str2 ' כטענה.

היה שָׁנָה = regPattern. מִבְחָן ( str2 ) ;

לאחר מכן, השתמש במשפט המותנה כדי לוודא אם המחרוזות שוות או לא:

אם ( שָׁנָה ) {
לְנַחֵם. עֵץ ( 'str1 שווה ל-str2' ) ;
} אַחֵר {
לְנַחֵם. עֵץ ( 'str1 אינו שווה ל-str2' ) ;
}

תְפוּקָה

אם ברצונך להשוות מחרוזת עם מחרוזת אחרת כמחרוזת משנה, עליך לעקוב אחר הסעיף שלהלן.

שיטה 4: השווה שתי מחרוזות באמצעות שיטת include()

כדי לקבוע אם המחרוזת היא מחרוזת משנה של המחרוזת האחרת, JavaScript מספק שיטה מוגדרת מראש הנקראת ' כולל() ' שיטה. זה לוקח מחרוזת כארגומנט ונותן ערך בוליאני ' נָכוֹן ' אם הוא קיים במחרוזת; אחרת, זה חוזר' שֶׁקֶר '.

תחביר

בצע את השיטה המפורטת להלן לשימוש בשיטת include():

str1. כולל ( str2 ) ;

כאן, ' str2 ' היא המחרוזת שבודקת אם היא כלולה או חלק מה-' str1 ”:

דוגמא

כאן, ראשית, ניצור שתי מחרוזות, 'str1' ו-'str2' ובדוק אם המחרוזת השנייה היא תת מחרוזת של ראשון או לא:

היה str1 = 'LinuxHint' ;
היה str2 = 'ב' ;

לשם כך, התקשר ל- שיטת 'includes()' על ידי העברת ה-'str2' בתור טיעון:

לְנַחֵם. עֵץ ( str1. כולל ( str2 ) ) ;

הפלט נותן ' נָכוֹן ' מה שמציין כי ' str2 ' הוא החלק של ' str1 ”:

ריכזנו את כל השיטות להשוואה בין שתי מחרוזות JavaScript.

סיכום

להשוואה בין שתי מחרוזות JavaScript, אתה יכול להשתמש בשיטת localeCompare(), אופרטור שוויון קפדני, שיטת RegEx עם test() או שיטת include(). אופרטור השוויון הקפד מבצע השוואה תלוית רישיות בעוד ששיטת test() ושיטת localeCompare() מבצעות את ההשוואה חסרת רישיות. לבסוף, שיטת include() בודקת את המחרוזת כמחרוזת משנה במחרוזת אחרת. במאמר זה, הדגמנו את השיטות להשוואה בין שתי מחרוזות ב-JavaScript עם דוגמאות מתאימות.