Выражение в конструкторе.(Работа с временем)



  • Помогите составить выражение для работы с временем, есть например время в формате часы:минуты возьмем время 23:44 Мне нужно к этому времени прибавить 25 минут, например, чтобы получить 00:09, как мне сделать, чтобы при превышении 59 минут выполнилось прибавление на 1 час и если часы больше 23, то ставилось бы ноль часов. Кто знает как это сделать, прошу помогите. Заранее спасибо!



  • @Canine
    Разберите мой старый скрипт будильника. http://community.bablosoft.com/topic/308/будильник-1-0


  • administrators

    @Canine

    Можно реализовать используя стандартный класс джаваскрипта Date

    0_1477839676797_movetime.xml



  • Еще один способ сложения времени. Через конструктор так сказать на пальцах) конечно это не идеальное решение, возможно даже способ покажется диким)
    Это скорее проба работы с конструктором. Кстати чумовая штука)
    0_1477862185382_дикий.jpg
    0_1477862169298_дикий способ через конструктор.xml



  • @Стас said in Выражение в конструкторе.(Работа с временем):

    Это скорее проба работы с конструктором. Кстати чумовая штука

    Ну этот способ показывает на сколько многофункционален может быть конструктор.Спасибо, интересно поучиться работать в конструкторе.



  • @support Еще раз прошу помощи, знаю что все написали в нескольких строках, но я далек еще от javascript. Подскажите как сделать вычитание дня из даты (есть допустим дата в адресе ссылки 2016/11/03/ и мне нужно вернуться к прошлому дню и все это планирую в цикле, т.е. вычитать значение переменной [[CYCLE_INDEX]]) Отнять нужно от текущей даты.



  • Сделал так с вычитанием 2 дней. Вроде работает, но я не заметил, что там не везде полные месяца, вот сайт http://www.mk.ru/news/ как мне быть если нету страницы, ведь страница может быть и произойти ошибка, если я правильно думаю.
    today = new Date()
    year = today.getFullYear()
    month = today.getMonth()
    day = today.getDate()
    var d = new Date(year, month, day);
    d.setDate(d.getDate() - 2);
    year = d .getFullYear()
    month = d .getMonth() +1
    day = d .getDate()
    [[INCREASED_TIME]] = year + "/" + month + "/" + day


  • administrators

    @Canine

    Подскажите как сделать вычитание дня из даты (есть допустим дата в адресе ссылки 2016/11/03/ и мне нужно вернуться к прошлому дню и все это планирую в цикле, т.е. вычитать значение переменной [[CYCLE_INDEX]]

    Вот так должно работать:

    var d = "2016/11/03".split("/")
    var date = new Date(d[0],d[1],d[2])
    date.setTime(Date.now() - [[CYCLE_INDEX]]*24*60*60*1000)
    [[INCREASED_TIME]] = date.getFullYear() + "/" + (date.getMonth() + 1) + "/" + date.getDay()
    

    Обратите внимание, что getDate() это день недели.



  • Помогите прибавить один день к дате 2016-12-05, что то у меня не получается.(год-месяц-день)


  • administrators

    @Canine

    var d = "2016-12-05".split("-")
    var date = new Date(parseInt(d[0]),parseInt(d[1]) - 1, parseInt(d[2]))
    date.setTime(date.getTime() + 24*60*60*1000)
    [[INCREASED_TIME]] = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate()
    


  • @support У меня почему то ошибку выбивает.(чисто скопировал, чтобы проверить) Что то было с переменной, спасибо работает!
    [23:37:48] Поток №1 : ReferenceError: Can't find variable: reply Номер строки:7 Во время выполнения скрипта { var d = "2016-12-05".split("-") var date = new Date(parseInt(d[0]),parseInt(d[1]) - 1, parseInt(d[2])) date.setTime(date.getTime() + 246060*1000) VAR_INCREASED_TIME = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate() reply section_start("test", 99193,function(){ })}


Log in to reply
 

Looks like your connection to Bablosoft was lost, please wait while we try to reconnect.