outerHTML

پرسیده شده
فعالیت 1134 روز پیش
دیده شده 477 بار
0

با سلام و خسته نباشید به اساتید و سایر دوستان

 

در زمان 14:14 ویدئو:

آیا این مطلب که ما مقدار myDiv.outerHTML رو تغییر میدیم و بعد هنگام لاگ کردن تغییر رو نمیبینیم با قوانین زبان جاوااسکریپت در تناقض نیست؟

این رو میفهمم که myDiv دیگه جزئی از DOM نیست و برای همین نشون داده نمیشه ولی چون هنوز یه رفرنس بهش اشاره میکنه همچنان وجود داره و از رم پاک نمیشه.

 

 اما چرا مقدار یه متغیر که ما ست کردیم تغییر نمیکنه؟ دقیقا چه اتفاقی می افته؟

 

فایل پیوست

Erfan Soori
Erfan Soori

3 بهمن 99

3
حذف شده

سلام

برای پاسخ به این سوال خیلی نمیخوام وارد جزئیات بشم و میخوام بدونی که این مورد رو میشه پیاده سازی کرد. یکی از روش های اون استفاده کردن از getter و setter هست که با این توابع میتونی مشخص بکنی که تغییرات یک property به چه صورتی اعمال بشه و زمانی هم که بخوای مقدار رو دریافت بکنی چه مقداری رو دریافت بکنی

برای شفاف سازی یک مثال خیلی ساده  رو می نویسم

 const person = {
            set code(code) {
                console.log(code)
            },
            get code() {
                return 1
            }
        }

  person.code = 55555
  console.log(person.code);

نکته مهم: این صرفا یک مثال و الزامی نداره حتما اون کسانی که outerHtml رو هم پیاده سازی کرده باشند از این روش استفاده کرده باشند

فایل پیوست

مجتبی سوری

توسط

مجتبی سوری

27 اسفند 99