/images
/content
/gallery
/1.jpg
/2.jpg
/3.jpg
/slider
/1.jpg
/2.jpg
/3.jpg
<div class="slider">
{% for i in 1..3 %}
<div class="slide">
<img src="/images/content/slider/{{ i }}.jpg">
</div>
{% endfor %}
</div>
computed: {
deadlineText() {
const today = new Date().setHours(0, 0, 0, 0);
const deadline = new Date(this.task.deadline).setHours(0, 0, 0, 0);
return [ 'Уже было', 'Сегодня', 'Жди' ][1 + Math.sign(deadline - today)];
},
},
json.data
– массив объектов. Массив хочется свести к единственному значению (сумме) — значит, нужен reduce().then(json => {
// сумма полей price
const sum = json.data.reduce((acc, c) => acc + c.price, 0);
// ...
По-хорошему надо ещё проверять. что валюта у всех товаров одинакова ) Почему именно ноды, а не элементы или еще как-то?Node дословно переводится как узел.
- почему тут нодыNode - любой объект DOM, в нем реализованы базовые методы.
- а тут элемент?
В чем разница?
const KEY = 'myLSkey';
const ymd = date =>
new Date(date.setTime(date.getTime() - date.getTimezoneOffset() * 6e4))
.toISOString()
.substring(0, 10);
const today = ymd(new Date()); // '2022-06-23'
const data = {
date: today,
count: 1,
...JSON.parse(localStorage.getItem(KEY)),
};
if (data.date !== today) {
data.date = today;
data.count++;
}
localStorage.setItem(KEY, JSON.stringify(data));
const options = [
[ 'hello, world!!', 'fuck the world', 'fuck everything' ],
500,
(elem => item => elem.textContent = item)
(document.querySelector('.slide-words')),
];
function interval(arr, delay, callback) {
let i = -1;
return arr.length
? setInterval(() => callback(arr[i = -~i % arr.length]), delay)
: null;
}
const intervalId = interval(...options);
// надо остановить, делаем так: clearInterval(intervalId);
function interval(arr, delay, callback) {
let timeoutId = null;
arr.length && (function next(i) {
timeoutId = setTimeout(() => {
callback(arr[i]);
next((i + 1) % arr.length);
}, delay);
})(0);
return () => clearTimeout(timeoutId);
}
const stop = interval.apply(null, options);
// надо остановить, делаем так: stop();
Set
удобен, например, когда нужно оставить из набора данных только уникальные.const data = [ 1, 2, 2, 3, 3, 3 ];
const unique = [...new Set(data)];
unique // [ 1, 2, 3 ]
Map
хорош тем, что ключами в нём могут быть и объекты. Например, HTML-элементы, для которых захочется хранить какие-то данные. И Map запоминает порядок добавления элементов, что может быть полезно при переборе. arr.map((item) => ({ ...item, averagePrice: item.finance / item.physicalVolume }));
<script src="main.js"></srcipt> -> <script src="main.js?1234567890"></srcipt>