פונקציית setTimeout
-
מצפה שיקח שניה בין iterator ל iterator בלולאה, אבל זה לא מגיב כך אלא הכל בבת אחת. איפה אני טועה.
let ms = efes.slice(0, (5 - mst.length)) + String(mst) let i = 3 for (const iterator of ms) { setTimeout(() => { $w('#text12' + i).text = iterator i+=1 }, 1000); }
-
-
@אבי-203 אתה יוצר בלולאה מיידית שלושה טיימרים, שאחרי 1000 MS יעשו משהו.
אז אחרי 1000 MS כולם קורים מיידית.
בשביל שכל אחד יקרה בסיום קודמו, צריך ליצור אותו אז (בתוך הקלאבק), או להעלות את מונה השניות בלולאה שכל טיימר יחכה כפול מקודמו, או להשתמש בsetInterval אם זה רלוונטי. -
@רפאל אמר בפונקציית setTimeout:
אני לא חושב שהLearning Curve גבוה במיוחד.
א) @חגי לא אמר שהLearning Curve גבוה במיוחד, הוא רק הצביע על זה שהוא קיים בפתרון זה לעומת הפתרונות האחרים.
ב)הביטוי "עקומת למידה תלולה" לא ברור. עיין בויקיפידיה.
נראה לי שכיום מקובל להשתמש בביטוי עבור נושאים שתחילת השימוש כרוך בלימוד יחסית "קשה", כלומר לקבל "קצת" תועלת צריך "הרבה" עבודה, לעומת דברים שאפשר לקבל "קצת" תועלת עם "קצת" עבודה ורק לקבל "הרבה" תועלת תצטרך "הרבה" השקעה.
שמתי את המילים "קצת" ו"הרבה" בגרשיים, כי הכל יחסי ואין מדדים מדוייקים לדברים אלו.
נראה (מנסיון קצר ללמוד את RXJS) שזה בהחלט עונה על ההגדרה של עקומת למידה תלולה...
שוב, זה לא מבטא כמה הנושא קשה, גם לא באופן יחסי. זה מבטא את הקצב של קבלת התועלת ביחס להשקעת העבודה בלמידה.
רק להבהיר, עקומת למידה תלולה הוא לא משהו שלילי. הפוך אני רואה את זה כחיובי, כי אחרי שהשקעת את העבודה הראשונית קיבלת את רוב ככל התועלת. -
גם עם מאוד קל ללמוד RXJS, וגם אם זה שווה לעבוד עם זה בכל צורך קטן, עדיין אין מקום לתשובות האלו ביחס לשאלה הפותחת של הנושא ולנוסח שלה ("איפה אני טועה").
כשמישהו ישאל מה הפתרון האלגנטי זה יהיה המקום להציע לו טכנולוגיות חכמות יותר. להציע לעבור לרכב חשמלי למישהו שלא מסתדר עם משהו ברכב, זה אומר שאתה סוכן מכירות.
זה סימן מובהק להתלהבות מסיונרית, שכנראה מגיעה לספריה הזו בצדק... -
@רפאל אמר בפונקציית setTimeout:
אתה מתכוון למשהו כזה?
אני מתכוון למשהו כזה:
https://www.learnrxjs.io/learn-rxjs/operators/creation/timer
אפשר לעשות פייפ וטייק כדי להגביל את הלולאהhttps://www.learnrxjs.io/learn-rxjs/operators/filtering/take
-
@ארכיטקט timer לא בדיוק מתאים כאן.
@yossiz הבנת השימוש בAPI של Promise (כמו כן שימוש נכון במילות המפתח async-await) אינה משימה פעוטה, הקוד שצורף בשאלה לא כלל שימוש בשני המנגנונים, ולעניות דעתי (וזו הייתה כוונתי בתגובה הקודמת) אין הבדל גדול ברמות הקושי.
אני ער לעובדה שהשימוש בPromises יותר נפוץ (ונתמך בתחביר), אולם יש לזכור שמדובר במנגנון חדש יחסית שעד לפני כמה שנים השימוש בו דרש יבוא של ספרייות חיצוניות, ממש כמו השימוש בRxJs כיום.
אגב הקונספט של Observable\Observer מועמד בשנים האחרונות לשילוב בתוך השפה.