DOM/אובייקט המחרוזת

מתוך ויקיספר, אוסף הספרים והמדריכים החופשי
< DOM
קפיצה לניווט קפיצה לחיפוש
JavaScript

התחלת העבודה

הוראת תנאי

לולאות

מערכים ומיונים

פונקציות

אובייקטים

JavaScript למתקדמים

ספריות

JavaScript למתקדמים


גרסה להדפסה

יצירת אובייקט מחרוזת[עריכה]

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

כשמכריזים על משתנה ניתן ליצוק בו ערך, למשל: x=10 או shalom=10 כלומר המשתנים הנ"ל קיבלו ערך של 10, ולכן אנו קוראים למשתנים מסוג זה, משתנה מספרי. אך ניתן לשנות את x לדוגמא כך: ;"x="dream כעת x קיבל ערך מחרוזת,שהחליף את הערך המספרי.
המעבר ממשתנה מחרוזת למשתנה מספרי מתאפשר בשפה זו ולא תקבל הערת אזהרה גם אם תעשה טעות!

ניתן לבצע החלפה בין שני סוגי המשתנים: ניתן לעבור ממשתנה מספרי למשתנה מחרוזת כשזה אפשרי. לדוגמא:

document.write("shalom is " + x);

במקרה זה נקבל הודעת פלט "shalom is 10" כי document.write זו פונקציה שעובדת עם מחרוזות.

מתי זה לא יעבוד? בדוגמא הבאה :

sum=x*4;

במקרה זה אם ניתן ל-x ערך של מחרוזת נקבל הודעת שגיאה.

כדי להמיר מחרוזת לערך המספרי ניתן להשמש בפונקציות שמיועדות לכך:

parseInt();

ממיר מחרוזת לערך המספרי שלה.

parseFloat();

ממיר מחרוזת לערך מספרי שיכול להכיל שבר.

בשני המקרים הוא יקרא את המספר הכתוב במחרוזת ויחזיר ערך מספרי. לדוגמא:

string="60 years"
x=parseInt(string);

במקרה זה x מכיל את הערך המספרי 60 ומתעלם ממה שאינו מספרי במחרוזת.

שימוש באובייקט המחרוזת[עריכה]

אם נסתכל על המחרוזת הבאה:

cake="I like cakes"

המשתנה cake הוא משתנה מחרוזת המכיל את המחרוזת "I like cakes", שהיא בעצם קבוצה של אותיות ורווחים. כדי ליצור אובייקט מחרוזת ניתן להשתמש בפונקציות מובנות של אובייקט המחרוזת. מלבד יצירת משתנה מחרוזת כפי שראינו עד כה, ניתן להשתמש בפורמט הבא:

 cake="I like cakes" 
cake=new string("I like cakes")

השימוש במילת המפתח new שמשמשת ליצירת אובייקטים מאפשרת גם ליצור את אובייקט המחרוזת string, המכיל במקרה זה את המשפט "I like cakes", המשוייך למשתנה הקרוי cake.

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

דוגמא: המשפט הבא: "It is only a cake", יכול להחליף את התוכן של המשתנה cake וכעת יש למשתנה cake מחרוזת חדשה.

cake="It is only a cake"

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

<html>
<head>
    <title>cakes</title>
</head>
<body>
    <h1>two cakes</h1>
    <script language="JavaScript"type="text/javascript">;
        cake1="I like cakes";
        cake2="It is only a cake";
        both=cake1+cake2;
        document.write(both);
    </script>
</body>
</html>

חישוב אורך המחרוזת[עריכה]

ע"י שימוש ב- length נוכל לחשב את אורך המחרוזת. דוגמא:

cake="I like cakes."
document.write(cake.length);

המשפט השני בדוגמא יחזיר את אורך המחרוזת, שהוא 13 במקרה זה (הוא סופר גם את הרווחים וגם את הנקודה). כלומר, הבטוי "cake.length" מקבל ערך מספרי ולכן ישמש רק כביטוי מספרי למרות שהמשתנה cake הוא משתנה מחרוזת.

אותיות גדולות וקטנות בכתיבה באנגלית[עריכה]

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

toUpperCase

הופכת לאותיות גדולות.

toLowerCase

דוגמא להפיכת מחרוזת לאותיות גדולות:

box="this is a box"
document.write (box.toUpperCase());

כתוצאה נקבל את המחרוזת: THIS IS A BOX. התחביר דומה לזה המשמש במתודה length רק בתוספת סוגריים.

שימוש במתודה substring[עריכה]

שימוש ב-substring כלומר בתת מחרוזת יחזיר חלק מהמחרוזת המצוי בין שתי נקודות לאורך השרשרת. לדוגמא:

abc="ABCDE"
document.write(abc.substring(1,3);

המספרים בסוגריים מתייחסים לאינדקס, כאשר באינדקס 0 (אפס)נמצא התו הראשון במחרוזת. במקרה זה במקום אפס נמצאת A, ולכן בדוגמא הנ"ל יוחזר BC. כמו כן, יש לשים לב שהקריאה היא משמאל לימין כמו באנגלית. אם רוצים הפוך, מימין לשמאל, נכתוב בסוגריים (3,1).

המתודה chartA[עריכה]

כאשר רוצים לקרוא לתו בודד מתוך המחרוזת נכתוב בדומה למתודות הקודמות:

abc="ABCDE"
abc.chartA(0);

במקרה זה נקבל A (שוב, מכיוון שאפס הוא התו בראשון).

המתודה indexOf[עריכה]

abc="ABCDE"
x=abc.indexOf(CD);

בעזרת מתודה זו ניתן למצוא רצף של אותיות, כלומר, substring בתוך המחרוזת. בדוגמא הנ"ל המשתנה x הוא האנדקס של CD בתוך המחרוזת ABCDE. ניתן גם לציין את המספר האינדקסי במחרוזת שבו רוצים שיתחיל לחפש את תת המחרוזת המבוקש. כך למשל בדוגמא שהבאנו ניתן לכתוב:

abc="ABCDE"
x=abc.indexOf(CD,1);

כלומר יחפש בממחרוזת ABC החל מהתו השני כלומר B, את תת הרצף CD.