js, פונקציה להעתקת אוביייקט כחדש
-
במערך יש את הפונקציה
arr.slice(0)שנותנת את המערך כחדש (ושינויים בחדש לא משתקפים במערך המקורי).
יש משהו תואם עבור העתקת אובייקט?
תודה. -
במערך יש את הפונקציה
arr.slice(0)שנותנת את המערך כחדש (ושינויים בחדש לא משתקפים במערך המקורי).
יש משהו תואם עבור העתקת אובייקט?
תודה. -
@מנצפך חשוב לציין שיש בעיה גדולה בגישה הזאת:
זה יכול לגרום לאיבוד מידע כי JSON מתעלמת לחלוטין מערכים מסויימים (בין השאר: מערכיfunctionו-undefinedועוד), הם פשוט לא יופיעו בהעתק...ראה את הפוסט הזה.
[לכן כנראה לעולם לא מומלץ להשתמש עם זה כי לך תדע איך ייראה האובייקט בעתיד].
לא להאמין אבל עושים את זה...
אולי לזה התכוונת?
-
@chagold
ב-JS מודרני נהוג לעשות את זה ככה:newObj = {...oldObj}זה עובד במקרים פשוטים. קיימות כמה כוכביות*** ואזהרות בנוגע לזה. יש עוד דרכים. במקרים לא פשוטים הייתי הולך על lodash.cloneDeep
@yossiz ראוי לזכור שזה תקף רק לאובייקט שטוח חד מימדי, באובייקט דו מימדי כל המימדים העמוקים יותר לא יועתקו, לדוגמא
const obj = { id:1, innerData: { id:1 } }innerData ישאר מצביע לאובייקט המקורי
שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.
נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.
בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗
הרשמה התחברות