Держи
<script>
Date.prototype.isBetween = function(){
return (new Date(this).getTime())>=(new Date(arguments[0]).getTime())&&(new Date(this).getTime())<=(new Date(arguments[1]).getTime())?true:false;
}
alert(new Date('2018-04-17').isBetween('2017-04-17','2019-04-17'));
</script>
⚤
JavaScript
Для объекта Date написать функцию isBetween( date1, date2), которая возвращает true
Всего делов то вывести количество миллисекунд, которые прошли с 1 января 1970 года и сравнить что больше, что меньше..
______________________________
var dateFirst = new Date(2018, 0, 1, 0, 0, 0, 0);
var dateLast = new Date(2018, 11, 31, 0, 0, 0, 0);
var dateBetween = new Date(2016, 4, 1, 0, 0, 0, 0);
function isBetween (date1, date2, date3) {
var d1 = date1.getTime() / 1000000;
var d2 = date2.getTime() / 1000000;
var d3 = date3.getTime() / 1000000;
document.write(d1 + ' ' + d2 + ' ' + d3);
if (d2 > d1 && d2 < d3) {
alert('yes');
return true;
} else {
alert('no');
return false;
}
}
isBetween(dateFirst, dateBetween, dateLast);
______________________________
var dateFirst = new Date(2018, 0, 1, 0, 0, 0, 0);
var dateLast = new Date(2018, 11, 31, 0, 0, 0, 0);
var dateBetween = new Date(2016, 4, 1, 0, 0, 0, 0);
function isBetween (date1, date2, date3) {
var d1 = date1.getTime() / 1000000;
var d2 = date2.getTime() / 1000000;
var d3 = date3.getTime() / 1000000;
document.write(d1 + ' ' + d2 + ' ' + d3);
if (d2 > d1 && d2 < d3) {
alert('yes');
return true;
} else {
alert('no');
return false;
}
}
isBetween(dateFirst, dateBetween, dateLast);
"Для объекта написать функцию" - метод прототипа, метод экземпляра, или что? Неужели не хватает мозгов чтобы по-русски и внятно сформулировать?..
_
Метод экземпляра (объекта):
var dateObj = new Date('любая_дата');
dateObj.isBetween = function (date1, date2) {
let from = Math.min(date1, date2),
to = Math.max(date1, date2);
return (this >= from) && (this <= to);
};
_
Метод экземпляра (объекта):
var dateObj = new Date('любая_дата');
dateObj.isBetween = function (date1, date2) {
let from = Math.min(date1, date2),
to = Math.max(date1, date2);
return (this >= from) && (this <= to);
};
Object.setPrototypeOf(
Date.prototype,
{
isBetween: function(f_date, s_date) {
return f_date < this && this < s_date;
}
}
);
const new_date_one = new Date();
..
const new_date_two = new Date();
...
const new_date_three = new Date();
...
new_date_one.isBetween(new_date_two, new_date_three); // false
new_date_two.isBetween(new_date_one, new_date_three); // true
Date.prototype,
{
isBetween: function(f_date, s_date) {
return f_date < this && this < s_date;
}
}
);
const new_date_one = new Date();
..
const new_date_two = new Date();
...
const new_date_three = new Date();
...
new_date_one.isBetween(new_date_two, new_date_three); // false
new_date_two.isBetween(new_date_one, new_date_three); // true
Похожие вопросы
- Почему функция постоянно возвращает true или false? (но не должна)
- Почему split не работает и правильно ли написана функция? javascript. Помогите, пожалуйста
- Зачем разработчики js сделали так что там где могли быть функции они добавили методы встроенных объектов.
- Вопрос по JavaScript, обращение к функции, которая находится в функции...
- Получение массива из объектов, которые содержат имя cookie и ее значение
- JAVA SCRIPT true , false Для чего нужны эти значения переменным?
- Какую структуру данных вы используете в разработке js приложений? Дерево? или Множество объектов? пояснение внутри
- Калькулятор из функций
- Задача по JavaScript. Заполнение объектов через цикл в JavaScript
- Вопрос про объекты
(написать функцию isBetween( date1, date2)) тут два аргумента у тебя три
⚤