דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. פעולה סינכרונית nodejs

פעולה סינכרונית nodejs

מתוזמן נעוץ נעול הועבר תכנות
23 פוסטים 5 כותבים 359 צפיות 4 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • dovidD מנותק
    dovidD מנותק
    dovid
    ניהול
    כתב ב נערך לאחרונה על ידי
    #6

    @yossiz אמר בפעולה סינכרונית nodejs:

    ftp.connect(args).then(()=>
    ftp.list(args).then((data)=>
    process(data);
    )
    )).then(
    email(/!!data isn't yet processed!!/);
    )

    לא דייקת, כי ככה גם יעבוד טוב! כי עשית שורה בודדת שזה מתודה מקוצרת וכאילו עשית return שזה מחזיר את הפרומייז השני של הthen וממילא הthen הבא ימתין לסיומו.
    אלא שהוא לא עשה מתודה מקוצרת אלא בלוק פקודות וreturn הוא על ערך מיידי שחוזר תיכף.

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

    • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
    • בכל נושא אפשר ליצור קשר dovid@tchumim.com
    yossizY תגובה 1 תגובה אחרונה
    2
    • dovidD dovid

      @yossiz אמר בפעולה סינכרונית nodejs:

      ftp.connect(args).then(()=>
      ftp.list(args).then((data)=>
      process(data);
      )
      )).then(
      email(/!!data isn't yet processed!!/);
      )

      לא דייקת, כי ככה גם יעבוד טוב! כי עשית שורה בודדת שזה מתודה מקוצרת וכאילו עשית return שזה מחזיר את הפרומייז השני של הthen וממילא הthen הבא ימתין לסיומו.
      אלא שהוא לא עשה מתודה מקוצרת אלא בלוק פקודות וreturn הוא על ערך מיידי שחוזר תיכף.

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

      yossizY מחובר
      yossizY מחובר
      yossiz
      כתב ב נערך לאחרונה על ידי
      #7

      @dovid נכון, תיקנתי.
      דרך אגב, מבטאים את זה פרומיס, לא פרומייז.

      📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

      תגובה 1 תגובה אחרונה
      1
      • ח מנותק
        ח מנותק
        חוקר
        כתב ב נערך לאחרונה על ידי
        #8

        למעשה מה שלא הצלחתי להבין.
        אני צריך לעשות לולאה של בדיקות ע"י FTP (אדרבה שכל הבדיקה תבוצע בבת אחת), ומצד שני בגמר הרצת הלולאה יבוצע העיבוד והשליחה למייל.
        לא כ"כ נראה לי ישים לעשות לולאה שיוצרת thenים מה ftp.connect הראשון.
        או אולי יש כן איזה דרך, וא"כ זה נראה לי הכי פשוט, אך עדיין לא מושלם כי אז תבוצע כל בדיקה בלולאה בנפרד, וחבל על הזמן.
        א"כ אני כן צריך משהו שמריץ הכל ביחד ובסיום אני מקבל את הנתונים.
        אולי בעצם ניתן לעשות זאת עם Promise​.all()?
        תודה

        dovidD תגובה 1 תגובה אחרונה
        0
        • ח חוקר

          למעשה מה שלא הצלחתי להבין.
          אני צריך לעשות לולאה של בדיקות ע"י FTP (אדרבה שכל הבדיקה תבוצע בבת אחת), ומצד שני בגמר הרצת הלולאה יבוצע העיבוד והשליחה למייל.
          לא כ"כ נראה לי ישים לעשות לולאה שיוצרת thenים מה ftp.connect הראשון.
          או אולי יש כן איזה דרך, וא"כ זה נראה לי הכי פשוט, אך עדיין לא מושלם כי אז תבוצע כל בדיקה בלולאה בנפרד, וחבל על הזמן.
          א"כ אני כן צריך משהו שמריץ הכל ביחד ובסיום אני מקבל את הנתונים.
          אולי בעצם ניתן לעשות זאת עם Promise​.all()?
          תודה

          dovidD מנותק
          dovidD מנותק
          dovid
          ניהול
          כתב ב נערך לאחרונה על ידי
          #9

          @חוקר
          חוששני שאתה לא בקטע כעת של "להבין" אלא בקטע של "להצליח", אני טועה?
          הסיבה שלא כדאי לעשות thenים בלולאה היא כיון שזה בזבוז זמן: אתה לא צריך שכל בדיקה תחכה לאחת, מה אכפת לך שהם יבוצעו במקביל? מה שחשוב לך זה לדעת מתי נגמרו כל הבדיקות ומה התוצאות שלהם. Promise.all/Promise.race הם בדיוק בשביל זה.

          • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
          • בכל נושא אפשר ליצור קשר dovid@tchumim.com
          ח תגובה 1 תגובה אחרונה
          0
          • dovidD dovid

            @חוקר
            חוששני שאתה לא בקטע כעת של "להבין" אלא בקטע של "להצליח", אני טועה?
            הסיבה שלא כדאי לעשות thenים בלולאה היא כיון שזה בזבוז זמן: אתה לא צריך שכל בדיקה תחכה לאחת, מה אכפת לך שהם יבוצעו במקביל? מה שחשוב לך זה לדעת מתי נגמרו כל הבדיקות ומה התוצאות שלהם. Promise.all/Promise.race הם בדיוק בשביל זה.

            ח מנותק
            ח מנותק
            חוקר
            כתב ב נערך לאחרונה על ידי חוקר
            #10

            @dovid אמר בפעולה סינכרונית nodejs:

            @חוקר
            חוששני שאתה לא בקטע כעת של "להבין" אלא בקטע של "להצליח", אני טועה?
            הסיבה שלא כדאי לעשות thenים בלולאה היא כיון שזה בזבוז זמן: אתה לא צריך שכל בדיקה תחכה לאחת, מה אכפת לך שהם יבוצעו במקביל? מה שחשוב לך זה לדעת מתי נגמרו כל הבדיקות ומה התוצאות שלהם. Promise.all/Promise.race הם בדיוק בשביל זה.

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

            תגובה 1 תגובה אחרונה
            1
            • ח מנותק
              ח מנותק
              חוקר
              כתב ב נערך לאחרונה על ידי חוקר
              #11

              ייתכן שאני על הכיון הנכון.
              הקוד הזה עבד לי טוב

                          var promises = [];
                          for (let i =0;i<3;i++) {
                              console.log('files'+i);
                              promises.push(ftp.list('/limudklali/' + HDate.getFullYear() + '/' + Month_arr[HDate.getMonth()] + '/'));
                          }
                          Promise.all(promises).then(function(values) {
                              ftp.end();
                              console.log(values);
                          });
              

              והפלט היה:

              files0
              files1
              files2
              [ [ { type: '-',
                    name: '20190506.wav',
                    target: undefined,
                    sticky: false,
                    rights: [Object],
                    acl: false,
                    owner: 'ftp',
                    group: 'ftp',
                    size: 680204,
                    date: 2019-05-05T21:08:00.000Z },
                  { type: '-',
                    name: '20190507.wav',
                    target: undefined,
                    sticky: false,
                    rights: [Object],
                    acl: false,
                    owner: 'ftp',
                    group: 'ftp',
                    size: 749004,
                    date: 2019-05-07T05:17:00.000Z }],
              [ { type: '-',
                    name: '20190506.wav',
                    target: undefined,
                    sticky: false,
                    rights: [Object],
                    acl: false,
                    owner: 'ftp',
                    group: 'ftp',
                    size: 680204,
                    date: 2019-05-05T21:08:00.000Z },
                  { type: '-',
                    name: '20190507.wav',
                    target: undefined,
                    sticky: false,
                    rights: [Object],
                    acl: false,
                    owner: 'ftp',
                    group: 'ftp',
                    size: 749004,
                    date: 2019-05-07T05:17:00.000Z }],
              [ { type: '-',
                    name: '20190506.wav',
                    target: undefined,
                    sticky: false,
                    rights: [Object],
                    acl: false,
                    owner: 'ftp',
                    group: 'ftp',
                    size: 680204,
                    date: 2019-05-05T21:08:00.000Z },
                  { type: '-',
                    name: '20190507.wav',
                    target: undefined,
                    sticky: false,
                    rights: [Object],
                    acl: false,
                    owner: 'ftp',
                    group: 'ftp',
                    size: 749004,
                    date: 2019-05-07T05:17:00.000Z }]]
              

              שזה אומר שמצד אחד הלולאה רצה מיידית על הכל, ומצד שני רק בסיום הלולאה יש לי את התוצאות.
              השאלה היא א"כ מה הכי פרקטי שמצד אחד יש לי את הנתונים לביצוע העיבוד, ומצד שני יש לי מערך של כל הפרומיסים עבור ה Promise.all.
              האם יש משהו בJS הצבת משתנה ששמו דינאמי, כמו בPHP למשל:

              ${'num' . $i} = $ftp->list('/limudklali/' + HDate.getFullYear() + '/' + Month_arr[HDate.getMonth()] + '/');
              print ${'num' . $i};
              

              בהדפסת משתנה בתוך מחרוזת ראיתי שזה קיים גם בJS

              res.end(` my num is: ${'num' + i},  good by`);
              

              אבל לא הצלחתי לעשות הצבת משתנה בסגנון זה.
              תודה

              dovidD תגובה 1 תגובה אחרונה
              0
              • א מנותק
                א מנותק
                אהרן
                כתב ב נערך לאחרונה על ידי
                #12

                מדוע sum מוקף במרכאות?

                ח תגובה 1 תגובה אחרונה
                0
                • ח חוקר

                  ייתכן שאני על הכיון הנכון.
                  הקוד הזה עבד לי טוב

                              var promises = [];
                              for (let i =0;i<3;i++) {
                                  console.log('files'+i);
                                  promises.push(ftp.list('/limudklali/' + HDate.getFullYear() + '/' + Month_arr[HDate.getMonth()] + '/'));
                              }
                              Promise.all(promises).then(function(values) {
                                  ftp.end();
                                  console.log(values);
                              });
                  

                  והפלט היה:

                  files0
                  files1
                  files2
                  [ [ { type: '-',
                        name: '20190506.wav',
                        target: undefined,
                        sticky: false,
                        rights: [Object],
                        acl: false,
                        owner: 'ftp',
                        group: 'ftp',
                        size: 680204,
                        date: 2019-05-05T21:08:00.000Z },
                      { type: '-',
                        name: '20190507.wav',
                        target: undefined,
                        sticky: false,
                        rights: [Object],
                        acl: false,
                        owner: 'ftp',
                        group: 'ftp',
                        size: 749004,
                        date: 2019-05-07T05:17:00.000Z }],
                  [ { type: '-',
                        name: '20190506.wav',
                        target: undefined,
                        sticky: false,
                        rights: [Object],
                        acl: false,
                        owner: 'ftp',
                        group: 'ftp',
                        size: 680204,
                        date: 2019-05-05T21:08:00.000Z },
                      { type: '-',
                        name: '20190507.wav',
                        target: undefined,
                        sticky: false,
                        rights: [Object],
                        acl: false,
                        owner: 'ftp',
                        group: 'ftp',
                        size: 749004,
                        date: 2019-05-07T05:17:00.000Z }],
                  [ { type: '-',
                        name: '20190506.wav',
                        target: undefined,
                        sticky: false,
                        rights: [Object],
                        acl: false,
                        owner: 'ftp',
                        group: 'ftp',
                        size: 680204,
                        date: 2019-05-05T21:08:00.000Z },
                      { type: '-',
                        name: '20190507.wav',
                        target: undefined,
                        sticky: false,
                        rights: [Object],
                        acl: false,
                        owner: 'ftp',
                        group: 'ftp',
                        size: 749004,
                        date: 2019-05-07T05:17:00.000Z }]]
                  

                  שזה אומר שמצד אחד הלולאה רצה מיידית על הכל, ומצד שני רק בסיום הלולאה יש לי את התוצאות.
                  השאלה היא א"כ מה הכי פרקטי שמצד אחד יש לי את הנתונים לביצוע העיבוד, ומצד שני יש לי מערך של כל הפרומיסים עבור ה Promise.all.
                  האם יש משהו בJS הצבת משתנה ששמו דינאמי, כמו בPHP למשל:

                  ${'num' . $i} = $ftp->list('/limudklali/' + HDate.getFullYear() + '/' + Month_arr[HDate.getMonth()] + '/');
                  print ${'num' . $i};
                  

                  בהדפסת משתנה בתוך מחרוזת ראיתי שזה קיים גם בJS

                  res.end(` my num is: ${'num' + i},  good by`);
                  

                  אבל לא הצלחתי לעשות הצבת משתנה בסגנון זה.
                  תודה

                  dovidD מנותק
                  dovidD מנותק
                  dovid
                  ניהול
                  כתב ב נערך לאחרונה על ידי
                  #13

                  @חוקר אמר בפעולה סינכרונית nodejs:

                  השאלה היא א"כ מה הכי פרקטי שמצד אחד יש לי את הנתונים לביצוע העיבוד, ומצד שני יש לי מערך של כל הפרומיסים עבור ה Promise.all.
                  האם יש משהו בJS הצבת משתנה ששמו דינאמי, כמו בPHP למשל:

                  לא הבנתי את המשפטים והקשר ביניהם.

                  • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                  • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                  ח תגובה 1 תגובה אחרונה
                  0
                  • א אהרן

                    מדוע sum מוקף במרכאות?

                    ח מנותק
                    ח מנותק
                    חוקר
                    כתב ב נערך לאחרונה על ידי חוקר
                    #14

                    @אהרן אמר בפעולה סינכרונית nodejs:

                    מדוע sum מוקף במרכאות?

                    כשאני רוצה להגיע לתוצאה של פלט "num1" אני חייב לכתוב

                     'num' + i
                    

                    כי num הוא מחרוזת קבועה שאליה מוסיפים את המשתנה הדינאמי, משא"כ אם הייתי כותב

                    num + i
                    

                    זה יחפש משתנה בשם num ומשתנה בשם i

                    תגובה 1 תגובה אחרונה
                    0
                    • dovidD dovid

                      @חוקר אמר בפעולה סינכרונית nodejs:

                      השאלה היא א"כ מה הכי פרקטי שמצד אחד יש לי את הנתונים לביצוע העיבוד, ומצד שני יש לי מערך של כל הפרומיסים עבור ה Promise.all.
                      האם יש משהו בJS הצבת משתנה ששמו דינאמי, כמו בPHP למשל:

                      לא הבנתי את המשפטים והקשר ביניהם.

                      ח מנותק
                      ח מנותק
                      חוקר
                      כתב ב נערך לאחרונה על ידי
                      #15

                      @dovid אמר בפעולה סינכרונית nodejs:

                      @חוקר אמר בפעולה סינכרונית nodejs:

                      השאלה היא א"כ מה הכי פרקטי שמצד אחד יש לי את הנתונים לביצוע העיבוד, ומצד שני יש לי מערך של כל הפרומיסים עבור ה Promise.all.
                      האם יש משהו בJS הצבת משתנה ששמו דינאמי, כמו בPHP למשל:

                      לא הבנתי את המשפטים והקשר ביניהם.

                      אני חשבתי על כיון של הצבת משתנה עבור כל לולאה נניח בשם

                      'num' + i
                      

                      ובמקביל ליצור מערך שדוחפים אליו את השמות הדינאמים.
                      ואז להעביר לPromise.all את המערך של שמות המשתנים שעליו להמתין עד שיגמרו את פעילותם.

                      תגובה 1 תגובה אחרונה
                      0
                      • ח מנותק
                        ח מנותק
                        חוקר
                        כתב ב נערך לאחרונה על ידי
                        #16

                        זה גם הלך לי.
                        האם יש רעיון יותר טוב

                                    var promises = [];
                                    for (let i =0;i<3;i++) {
                                        console.log('files'+i);
                                        global['files'+i] = (ftp.list('/limudklali/' + HDate.getFullYear() + '/' + Month_arr[HDate.getMonth()] + '/'));
                                        promises.push(global['files'+i]);
                                    }
                                    Promise.all(promises).then(function(values) {
                                        ftp.end();
                                        console.log(values);
                                    });
                        

                        כאן הלולאה עובדת מצויין, הכל מבוצע במקביל, ומצד שני יש לי Promise.all בסיום

                        A תגובה 1 תגובה אחרונה
                        0
                        • ח חוקר

                          זה גם הלך לי.
                          האם יש רעיון יותר טוב

                                      var promises = [];
                                      for (let i =0;i<3;i++) {
                                          console.log('files'+i);
                                          global['files'+i] = (ftp.list('/limudklali/' + HDate.getFullYear() + '/' + Month_arr[HDate.getMonth()] + '/'));
                                          promises.push(global['files'+i]);
                                      }
                                      Promise.all(promises).then(function(values) {
                                          ftp.end();
                                          console.log(values);
                                      });
                          

                          כאן הלולאה עובדת מצויין, הכל מבוצע במקביל, ומצד שני יש לי Promise.all בסיום

                          A מנותק
                          A מנותק
                          avr416
                          כתב ב נערך לאחרונה על ידי
                          #17

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

                          ח תגובה 1 תגובה אחרונה
                          2
                          • A avr416

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

                            ח מנותק
                            ח מנותק
                            חוקר
                            כתב ב נערך לאחרונה על ידי
                            #18

                            @avr416 אמר בפעולה סינכרונית nodejs:

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

                            כדי שיהיה לי גישה אח"כ לעיבוד הנתונים.
                            אני צריך אפשרות לעבד כל אחת מהתוצאות.
                            את העיבוד אני יעשה בתוך ה promise.all.
                            בראשון הכל נכנס לתוך מערך בלי שיהיה לי את השם של התוצאה ואז אין לי איך לעבד את התוצאה לכל אחד, לדעת של מי כל תוצאה.

                            A תגובה 1 תגובה אחרונה
                            0
                            • ח חוקר

                              @avr416 אמר בפעולה סינכרונית nodejs:

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

                              כדי שיהיה לי גישה אח"כ לעיבוד הנתונים.
                              אני צריך אפשרות לעבד כל אחת מהתוצאות.
                              את העיבוד אני יעשה בתוך ה promise.all.
                              בראשון הכל נכנס לתוך מערך בלי שיהיה לי את השם של התוצאה ואז אין לי איך לעבד את התוצאה לכל אחד, לדעת של מי כל תוצאה.

                              A מנותק
                              A מנותק
                              avr416
                              כתב ב נערך לאחרונה על ידי
                              #19

                              @חוקר
                              אם global הוא אובייקט, אתה יכול להמיר אותו למערך ולהעביר אותו ישירות לפרומיס.all וא"צ ליצור עוד מערך של פרומיסס.

                              Promise.all(Object.keys(global).map(k=>global[k]))
                              

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

                              ח A 2 תגובות תגובה אחרונה
                              1
                              • A avr416

                                @חוקר
                                אם global הוא אובייקט, אתה יכול להמיר אותו למערך ולהעביר אותו ישירות לפרומיס.all וא"צ ליצור עוד מערך של פרומיסס.

                                Promise.all(Object.keys(global).map(k=>global[k]))
                                

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

                                ח מנותק
                                ח מנותק
                                חוקר
                                כתב ב נערך לאחרונה על ידי
                                #20

                                @avr416
                                גלובל הוא הפיתרון למה ששאלתי כאן למעלה https://tchumim.com/post/61118
                                הוא מערך של כל המשתנים vars בסקופ.
                                אבל אכן חזרתי בי מהצורך להשים אותם כמשתנה גלובאלי, אלא ליצור אובייקט נפרד לקבלת התוצאות, ואז ליצור משהו בסגנון שציינת עבור ה Promise.all

                                תגובה 1 תגובה אחרונה
                                0
                                • A avr416

                                  @חוקר
                                  אם global הוא אובייקט, אתה יכול להמיר אותו למערך ולהעביר אותו ישירות לפרומיס.all וא"צ ליצור עוד מערך של פרומיסס.

                                  Promise.all(Object.keys(global).map(k=>global[k]))
                                  

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

                                  A מנותק
                                  A מנותק
                                  avr416
                                  כתב ב נערך לאחרונה על ידי
                                  #21

                                  @avr416 אמר בפעולה סינכרונית nodejs:

                                  @חוקר
                                  אם global הוא אובייקט, אתה יכול להמיר אותו למערך ולהעביר אותו ישירות לפרומיס.all וא"צ ליצור עוד מערך של פרומיסס.

                                  Promise.all(Object.keys(global).map(k=>global[k]))
                                  

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

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

                                  תגובה 1 תגובה אחרונה
                                  1
                                  • dovidD מנותק
                                    dovidD מנותק
                                    dovid
                                    ניהול
                                    כתב ב נערך לאחרונה על ידי dovid
                                    #22

                                    @חוקר אם אתה רוצה בתוצאת הפרומיס נתון נוסף ממה שהוא מחזיר במקור, אתה יכול להוסיף את הנתון בthen שבעצם יוצר פרומייז נוסף בהסתיים הראשון:

                                    var promises = [];
                                    for (let i =0;i<3;i++) {
                                        console.log('files'+i);
                                        var pr = ftp.list($`/limudklali/${HDate.getFullYear()}/${Month_arr[HDate.getMonth()]}/`)
                                                    .then(x => { return {source: i, result: x} }));
                                        promises.push(pr);
                                    }
                                    Promise.all(promises).then(function(values) {
                                        ftp.end();
                                        console.log(values);
                                    });
                                    
                                    • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                                    • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                                    ח תגובה 1 תגובה אחרונה
                                    2
                                    • dovidD dovid

                                      @חוקר אם אתה רוצה בתוצאת הפרומיס נתון נוסף ממה שהוא מחזיר במקור, אתה יכול להוסיף את הנתון בthen שבעצם יוצר פרומייז נוסף בהסתיים הראשון:

                                      var promises = [];
                                      for (let i =0;i<3;i++) {
                                          console.log('files'+i);
                                          var pr = ftp.list($`/limudklali/${HDate.getFullYear()}/${Month_arr[HDate.getMonth()]}/`)
                                                      .then(x => { return {source: i, result: x} }));
                                          promises.push(pr);
                                      }
                                      Promise.all(promises).then(function(values) {
                                          ftp.end();
                                          console.log(values);
                                      });
                                      
                                      ח מנותק
                                      ח מנותק
                                      חוקר
                                      כתב ב נערך לאחרונה על ידי
                                      #23

                                      @dovid
                                      ב"ה במקביל לעבודה התחלתי להבין יותר מהו פרומיס.
                                      גם מה שכתבת כעת מועיל מאוד.
                                      תודה

                                      תגובה 1 תגובה אחרונה
                                      2
                                      תגובה
                                      • תגובה כנושא
                                      התחברו כדי לפרסם תגובה
                                      • מהישן לחדש
                                      • מהחדש לישן
                                      • הכי הרבה הצבעות


                                      • 1
                                      • 2
                                      בא תתחבר לדף היומי!
                                      • התחברות

                                      • אין לך חשבון עדיין? הרשמה

                                      • התחברו או הירשמו כדי לחפש.
                                      • פוסט ראשון
                                        פוסט אחרון
                                      0
                                      • דף הבית
                                      • קטגוריות
                                      • פוסטים אחרונים
                                      • משתמשים
                                      • חיפוש
                                      • חוקי הפורום