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

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

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

שאלות בסיסיות ב-js או בכלל בתכנות

מתוזמן נעוץ נעול הועבר ארכיון code613m
20 פוסטים 3 כותבים 949 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • א מנותק
    א מנותק
    אהרן
    כתב ב נערך לאחרונה על ידי
    #11

    אשמח תשפרט את הרקע, מי צועק ואיפה בדיוק.

    ide c9

    לכידה.JPG

    פורסם במקור בפורום CODE613 ב04/09/2015 13:29 (+03:00)

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

      תלונתו היא שאתה ניגש לvalur בלי לבדוק קודם שהerror ריק (אם תוסיף if (!err) אזי הוא ישתוק כנראה), אבל נשגב מבינתי איך ה"חוזה" הזה מוכר לIDE.

      פורסם במקור בפורום CODE613 ב06/09/2015 11:15 (+03:00)

      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

      בכל נושא אפשר ליצור קשר dovid@tchumim.com

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

        ובהרצה זה כן מובן?

        פורסם במקור בפורום CODE613 ב06/09/2015 11:16 (+03:00)

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

          @אהרן

          ובהרצה זה כן מובן?

          היינו הך.

          פורסם במקור בפורום CODE613 ב06/09/2015 11:20 (+03:00)

          מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

          בכל נושא אפשר ליצור קשר dovid@tchumim.com

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

            אז עוד שאלה על JS......
            לשאלה הזו יש הרבה חברים 🙂

            פורסם במקור בפורום CODE613 ב06/09/2015 11:21 (+03:00)

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

              @דוד ל.ט.

              תלונתו היא שאתה ניגש לvalur בלי לבדוק קודם שהerror ריק (אם תוסיף if (!err) אזי הוא ישתוק כנראה), אבל נשגב מבינתי איך ה"חוזה" הזה מוכר לIDE.

              עכשיו מצאתי איך הפונקציה עובדת
              באמת עם try (מושג חדש שלא הכרתי עד שהכרת לי)

              LevelUP.prototype.get = function (key_, options, callback) {
                var self = this
                  , key
              
                callback = getCallback(options, callback)
              
                if (maybeError(this, options, callback))
                  return
              
                if (key_ === null || key_ === undefined || 'function' !== typeof callback)
                  return readError(this
                    , 'get() requires key and callback arguments', callback)
              
                options = util.getOptions(options)
                key = this._codec.encodeKey(key_, options)
              
                options.asBuffer = this._codec.valueAsBuffer(options)
              
                this.db.get(key, options, function (err, value) {
                  if (err) {
                    if ((/notfound/i).test(err) || err.notFound) {
                      err = new NotFoundError(
                          'Key not found in database [' + key_ + ']', err)
                    } else {
                      err = new ReadError(err)
                    }
                    return dispatchError(self, err, callback)
                  }
                  if (callback) {
                    try {
                      value = self._codec.decodeValue(value, options)
                    } catch (e) {
                      return callback(new EncodingError(e))
                    }
                    callback(null, value)
                  }
                })
              }
              

              פורסם במקור בפורום CODE613 ב06/09/2015 21:32 (+03:00)

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

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

                פורסם במקור בפורום CODE613 ב06/09/2015 21:41 (+03:00)

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

                  ברור שהIDE מכיר את הפונקציות. אבל פלאי בעיני שהוא אוכף התייחסות לerror. לא ידוע לי שגם ישנו חוק כזה שחייבים לבדוק את ערכה של השגיאה בcatch.
                  אני מחכה לדברי mat.

                  פורסם במקור בפורום CODE613 ב07/09/2015 10:06 (+03:00)

                  מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                  בכל נושא אפשר ליצור קשר dovid@tchumim.com

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

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

                    פורסם במקור בפורום CODE613 ב08/09/2015 14:58 (+03:00)

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

                      @דוד ל.ט.

                      @אהרן

                      function myModule() {
                          ...
                      }
                      var myModule = new myModule(); //creating the instanceמה זה עושה ??
                      

                      מה עושה שמכניסים את אותו משתנה לתוכו?

                      כשכותבים new לפני קריאה לפונקציה, אז:

                      1. במידה והפונקציה מחזירה אובייקט (לא פרימיטיבי כטקסט ומספר כלומר כזה שהלוג שלו מיוצג עם סוגריים {}), אז הוא מוחזר למשתנה.
                      2. במידה ואיננה מחזירה אובייקט (או שאיננה מחזירה כלום או טיפוס פרימיטיבי) אז נוצר אובייקט חדש שמהווה "קרקע" (בתכנותית: מופע, instance) לthis שבפונקציה. בלי ה"קרקע" הזו הפונקציה הנקראת "דורכת" על "קרקע" הפונקציה הקוראת.

                      הדגמה:

                      function func() {
                      	this.a = "variable ";
                      	return "function result...";
                      }
                      
                      var resultWithoutNew = func();
                      console.log(resultWithoutNew); //function result...
                      console.log(a); // variable
                      console.log(resultWithoutNew.a); // undefined
                      
                      a = 123;
                      
                      var resultWithNew = new func();
                      console.log(resultWithNew); // { a: 'variable ' }
                      console.log(a); // 123
                      console.log(resultWithNew.a); // variable
                      

                      הnew מאפשר לתת "סקופ" חדש למה שהפונקציה מחזירה וככה ליצור מופעים שונים של אותו מחלקה-אב טיפוס על מאפייניו והפונקציות שלו.

                      לא מבין [כמעט] כלום

                      this.a = "variable ";
                      

                      שווה ל

                      func.a = "variable ";
                      

                      ?

                      איך

                      console.log(a); // variable
                      a = 123;
                      

                      ממתי יש משתנה a?
                      הרי a הוא רק תכונה (property) של func והעתקים ממנו?!


                      var resultWithoutNew = func();
                      

                      אם כן אני צודק שיש 3 'רמות' של העברה בין פונקציה לפונקציה

                      resultWithNew = func();
                      resultWithNew = new func();
                      resultWithNew = func;
                      
                      1. מעביר רק את התוצאה.
                      2. רק את התכונות (במידה ומדובר באוביקט).
                      3. את כל הפונקציה במלואה.
                        ?

                      אם משתמשים באפשרות 3, ואז שעכשיו מכיל בתוכו

                      this.a = "variable ";
                      

                      מי שם ה-this ?

                      סליחה על ההתקפה ותודה על הסבלנות 🙂

                      פורסם במקור בפורום CODE613 ב18/09/2015 16:48 (+03:00)

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

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

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

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