как мне реализовать различные методы внутри построения класса

#javascript #class

#javascript #класс

Вопрос:

 class Time{
    constructor(hours,minutes){
        this.hours=hours;
        this.minutes=minutes;
    }

    addTime(val=0,func=showTime){             //How can I write this part too?<--
        this.minutes =val;
        if(this.minutes>60){
            this.hour  ;
            this.minutes-=60;
        }
        return this.func()                   //this was something I was toying with<--
    }

    round(){
        switch(this.minutes%5){
            case 0:break;
            case 1:this.minutes-=1;break;
            case 2:this.minutes-=2;break;
            case 3:this.minutes =2;break;
            case 4:this.minutes =1;break;
            default:break;
        }
        //console.log(this.minutes)
        return this.hours ":" this.minutes;  //here too... I didn't know how to return a method<--     
    }

    showTime(){
        return this.hours ":" this.minutes;
    }

    
}
 
  1. функция addTime() должна быть выполнена таким образом, чтобы я мог использовать другой метод (любой из двух), который я закодировал ниже сразу после внесения изменений.
  2. это была моя попытка создать код для класса времени, который я пытался реализовать в веб-приложении js для отслеживания времени
  3. Я все еще только начинаю, поэтому любые предложения по его улучшению должны быть понятны новичку, прошу прощения за неудобства …?:(
  4. Это мой первый пост здесь… Я не совсем уверен, могу ли я опубликовать здесь подобные сомнения, поэтому любая обратная связь приветствуется

Комментарии:

1. Добро пожаловать в Stackoverflow @abhiCoder. Пожалуйста, примите к сведению, что это сообщество открыто для множества вопросов, если у вас есть проблемы с конкретной проблемой кода, которую вы не можете решить с помощью других ресурсов, но ваша проблема кажется простым вопросом программирования. Пожалуйста, попробуйте ознакомиться с общедоступными ресурсами, такими как w3schools.com/js

Ответ №1:

Если вы хотите получить доступ к функции того же класса в другой функции, я предлагаю использовать self параметр. например. def function_name(self, other_parameters) . Здесь ‘self’ обозначает класс, тогда вы можете вызывать другие функции с помощью self.function_name .

Итак, в вашей программе вы можете вызывать другие функции внутри другой, используя код типа:

 def func1(self):
     #code
def func2(self):
     self.func1
 

Ответ №2:

Попробуйте изменить return this.func() на return func() .