Saar Twito’s Post

View profile for Saar Twito, graphic

Professional Speaker and Instructor on Software Development | Founder of Coding With Saar | Full-Stack Web Developer

ההבדל בין unknown ל-any ב-TypeScript כשהתחלתי ללמוד TypeScript, אחד הדברים שבלבלו אותי היה להבין את ההבדל בין unknown ל-any. הרי שניהם נראים כמו "type כללי", אז מה ההבדל הגדול ביניהם? האמת היא ש-unknown הוא כמו גרסה "בטוחה" יותר של any. הנה הסבר קצר וברור. אז קודם נתחיל עם any: זה כמו לומר ל-TypeScript: "עזוב אותי, אני יודע מה אני עושה." ברגע שמשתמשים ב-any, אפשר לקרוא ל-methods, לגשת ל-properties, או לעשות כל דבר אחר עם הערך – בלי ש-TypeScript יתלונן. זה יכול להיות מאוד גמיש ושימושי, אבל גם מסוכן, כי זה מבטל לחלוטין את הבדיקות של TypeScript, ולכן עלול לגרום לבעיות בזמן ריצה. השימוש ב-unknown: כאן TypeScript אומר לך: "אני לא יודע מה ה-type, אז תצטרך להוכיח לי." אם תנסו לגשת ל-method או לבצע פעולה על ערך מסוג unknown, אז TypeScript ידרוש מכם לבדוק קודם מה ה-type של הערך. זה מוסיף שכבת הגנה ומונע טעויות. אז למה לבחור ב-unknown? כי unknown מתאים למצבים שבהם אתם רוצים לשמור על גמישות אבל עדיין לשמור על בדיקות ה-types. זה פתרון מעולה כשאתם עובדים עם נתונים שמגיעים ממקורות חיצוניים (API, JSON וכו'), ואתם רוצים לוודא מה יש לכם לפני שאתם משתמשים בו. מתי לבחור ב-any? בתאכלס, תנסו כמה שפחות (אם בכלל) אבל רק כשאתם בטוחים לחלוטין מבחינת הקוד ואין לכם שום ברירה אחרת. any הוא כמו "סכין חדה" – שימושי אבל מסוכן.

Saar Twito

Professional Speaker and Instructor on Software Development | Founder of Coding With Saar | Full-Stack Web Developer

3w
Like
Reply

סרטון מעולה וסופר חשוב ואגב אפשר להימנע משימוש בany באופן מוחלט גם בטייפים הקשים ביותר ע"י שימוש בnever במקום, איפה שצריך 🙌

Adir Kandel

🎗️10K+ Followers | ✨ Enriching developers via content

3w

אין ספק ש any זה מסוכן. מתחבר להסבר שלך 👏

Amit Licht

Frontend Developer at E-SQUARE.io 🇮🇱 ex-musician

3w

הסבר מצויין, יש נטייה לחשוב ששימוש בany וunknown זה עצלנות או bad practice אבל במקרי קצה כאלה זה מאד שימושי

Yair Yakobson

Fullstack Developer | Experience in JavaScript | TypeScript | React | NextJS | NodeJS | MongoDB

3w

הסבר טוב ומובן. כל הכבוד. יצא לי לעבוד עם unknown ממש מעט כי לא ידעתי שיש כזה data type וכשגיליתי עליו גם אני, בדיוק כמוך חשבתי שזה כמו any.

Avraham Abeles

Full Stack Developer | Angular | .Net

2w

חד כמו תמיד!

Dror Krief

Front-end Developer React \ Redux \ JavaScript

2d

קראתי תודה Any and unknown the difference

Like
Reply
See more comments

To view or add a comment, sign in

Explore topics