• 1399/04/28

سوال در مورد عملکرد یک تابع در مبحث ارث بری در Typescript :

ضمن عرض سلام خدمت استاد مدائنی

ببخشید استاد ممکنه در مبحث ارث بری در جلسه 14 عملکرد تابع () canchangestate  در کلاس

Todostatechanger رو توضیح بدید ؟ 

یعنی در چه حالتی پارامتر ورودی  تابع (todo : Todo)  میتونه خالی پاس داده بشه یا به عبارت دیگه در چه حالتی مقدار بازگشتی تابع  () canchangestate برابر با false خواهد شد ؟ 

به عنوان مثال در زیر اگر به جای متغیر xx متغیر zz رو هم بعنوان ورودی به تابع () canchangestate پاس بدیم باز هم  مقدار بازگشتی  برابر با true میشه و مقدار newstate بر اساس مقدار پارامتر ورودی پاس داده شده به کانستراکتور کلاس Todostatechanger  در هنگام تعریف نمونه جدید از کلاس ؛ تغییر خواهد کرد 

ممنون میشم راهنمایی بفرمایید

 interface Todo {
  name: string;
  State: Todostate;
}

enum Todostate {
  New,
  Active,
  Complete,
  Delete,
}
var zz :Todo = {};
var xx: Todo = {
  name: "ali",
  State: Todostate.Delete,
};

class Todostatechanger {
  constructor(private newstate: Todostate) {}
  
  canchangestate(todo: Todo): boolean {
    return !!todo;
  }

  changestate(todo: Todo): Todo {
    if (this.canchangestate(todo)) {
      todo.State = this.newstate;
    }
    return todo;
  }
}
var x = new Todostatechanger (Todostate.New);
x.canchangestate(xx);
x.changestate(xx);
console.log(x);
  • 1399/04/28
  • ساعت 12:57

سلام 

فکر کنم در آموزش کامل توضیح داده باشه 

شماره جلسه این مبحث را ارسال کنید 

ممنون


  • 1399/04/28
  • ساعت 13:21

سلام استاد 

مبحث ارث بری در جلسه 14 

تشکر 


  • 1399/04/28
  • ساعت 13:23

بررسی میکنم 

 


  • 1399/04/28
  • ساعت 13:31

خیلی ممنون استاد 

لطف میکنید ، تشکر


logo-samandehi