Array.prototype.deepIncludes = function (searchEl) {
let indexes = [];
for (let i = 0; i < this.length; i++) {
if (this[i].includes(searchEl)) indexes.push(i);
}
return { result: indexes.length > 0, indexes };
}
let test = chat.deepIncludes('чай');
console.log(test.result); // true
console.log(test.indexes); // индексы строк с совпадением
/../../../style.css
../../../style.css
./../../../style.css
бесплатно за опыт и код ревью поработать с непонятными сроками, на говнозадачах
Существуют ли подобные варианты?
let cslides = 5; // Сюда запиши кол-во слайдов. Я взял 5 для наглядности
right.onclick = function () {
slider.classList.add('animation');
count ++;
if (count >= cslides) count = 0; // раз
slider.style.transform = 'translate(' + `${-stepSize * count}px)`;
};
left.onclick = function () {
slider.classList.add('animation');
count --;
if (count < 0) count = cslides - 1; // двас
slider.style.transform = 'translate('+`${-stepSize*count}px)`;
};
let a = querySelector(`a[role="button"]`);
a.outerHTML = `<a class="nav-link" href="javascript:;" onclick="OpenOplata()">${ a.innerHTML }</a>`;
Date.prototype.addDays = function(days) { // https://stackoverflow.com/questions/563406/how-to-add-days-to-date
var date = new Date(this.valueOf());
date.setDate(date.getDate() + days);
return date;
}
function date4y2m2d(date) {
const _format = n => {
return n < 10 ? '0' + n : n;
};
return `${ date.getFullYear() }-${ _format(date.getMonth() + 1) }-${ _format(date.getDate()) }`;
}
let date = new Date();
let days = [date4y2m2d(date)];
for (let i = 1; i < 5; i++) {
days.push( date4y2m2d(date.addDays(i)) );
}
console.log(days); //готово
// берём любое изображение
let img = document.querySelector('img');
// создаём <canvas> того же размера
let canvas = document.createElement('canvas');
canvas.width = img.clientWidth;
canvas.height = img.clientHeight;
let context = canvas.getContext('2d');
// копируем изображение в canvas (метод позволяет вырезать часть изображения)
context.drawImage(img, 0, 0);
// мы можем вращать изображение при помощи context.rotate() и делать множество других преобразований
// toBlob является асинхронной операцией, для которой callback-функция вызывается при завершении
canvas.toBlob(function(blob) {
// после того, как Blob создан, загружаем его
let link = document.createElement('a');
link.download = 'example.png';
link.href = URL.createObjectURL(blob);
link.click();
// удаляем внутреннюю ссылку на Blob, что позволит браузеру очистить память
URL.revokeObjectURL(link.href);
}, 'image/png');