я хочу научиться, но уже на готовом к моему слайдер коду.
setInterval(plusSlide, 4000);
const sm = $('.side-menu');
if (!sm.length) return;
sm.on('click', 'button', function () {
let item = $(this).closest('li');
item.toggleClass('open');
item.children('ul').slideToggle();
item.closest('ul').children('li').not(item).find('ul').slideUp();
});
sm.find('.open').children('ul').show();
<ul class="side-menu">
<li class="open">
<span><a href="#">Металлопрокат</a><button><svg class=" i i-angle-left"><use xlink:href="/design/images/sprite.svg#angle-left"></use></svg></button></span>
<ul class="side-menu__nested">
<li class="open">
<span><a href="#">Сортовой прокат</a><button><svg class=" i i-angle-left"><use xlink:href="/design/images/sprite.svg#angle-left"></use></svg></button></span>
<ul class="side-menu__nested">
<li class="">
<span><a href="#">Квадратный</a><button><svg class=" i i-angle-left"><use xlink:href="/design/images/sprite.svg#angle-left"></use></svg></button></span>
<ul class="side-menu__nested">
<li class=""><span><a href="#">Балка</a></span></li>
<li class=""><span><a href="#">Уголок</a></span></li>
<li class="current"><span><a href="#">Швеллер</a></span></li>
<li class=""><span><a href="#">Арматура</a></span></li>
</ul>
</li>
<li class="">
<span><a href="#">Круглый</a><button><svg class=" i i-angle-left"><use xlink:href="/design/images/sprite.svg#angle-left"></use></svg></button></span>
<ul class="side-menu__nested">
<li class=""><span><a href="#">Балка</a></span></li>
<li class=""><span><a href="#">Уголок</a></span></li>
<li class="current"><span><a href="#">Швеллер</a></span></li>
<li class=""><span><a href="#">Арматура</a></span></li>
</ul>
</li>
<li class="">
<span><a href="#">Шестигранный</a><button><svg class=" i i-angle-left"><use xlink:href="/design/images/sprite.svg#angle-left"></use></svg></button></span>
<ul class="side-menu__nested">
<li class=""><span><a href="#">Балка</a></span></li>
let data = {...};
let html = '';
for (let k in data) {
if (!data.hasOwnProperty(k)) continue;
let item = data[k];
html += '<ul>';
html += '<li>'+item['category']+'</li>';
html += '<li>'+item['symbol']+'</li>';
// ...
html += '</ul>';
}
document.getElementById('differencesDiv').innerHTML = html;
параметры не используются, забыла убрать из конструктора)
const crust = prompt('Choose your crust: ');
const howMany = +prompt('How many toppings do you want?');
const personalPizza = new Pizza(crust, howMany);
// Исходный объект
const obj: {
12345: 1,
12346: 2,
12356: 1,
12357: 1,
12360: 1,
}
// Результат
let result = {};
// Делаем из объекта массив, пригодный для преобразования в объект Map
const mapableArray = Object.entries(this.obj);
// Меняем местами ключи и значения
const mapableReversedArray = mapableArray.map(kv => [kv[1], kv[0]]);
// Создаем объект Map из обращенного массива
// При это дубликаты ключей будут перезаписаны и станут уникальными
const map = new Map(mapableReversedArray);
// Осталось только собрать целевой объект
map.forEach(function(value, key) { result[key] = value; });
// И использовать результат
console.log(result);
let result = {};
(new Map(Object.entries(this.obj).map(kv => [kv[1], kv[0]])))
.forEach(function(value, key) { result[key] = value; });
console.log(result);
let result = Array.from(
(new Map(Object.entries(this.obj).map(kv => [kv[1], kv[0]])))
).reduce((acc, v) => { acc[v[1]] = v[0]; return acc; }, {});
function getData() {
//...
return new Promise((resolve, reject) => {
xhr.onreadystatechange = function () {
if (xhr.readyState != 4) reject(xhr.statusText);
if (xhr.status != 200) {
reject(xhr.statusText);
} else {
resolve(xhr.responseText);
}
};
xhr.send();
});
}
// use
getData()
.then(function(response){
console.log('Its OK', response);
})
.catch(function(errorText){
console.log('Error:', errorText);
});
<template>
<b-button
variant="outline-warning"
class="d-block text-white text-uppercase"
:disabled="btnLoading"
>
<span v-text="buttonText"></span>
<i class="fas fa-spinner fa-spin" v-if="btnLoading"></i>
</b-button>
</template>
<script>
...
data() {
return {
tabIndex: 0,
firstServer: {},
product: {},
order: {
nickname: '',
productId: ''
},
btnLoading: false
}
},
computed: {
buttonText() {
return this.btnLoading
? 'Подождите'
: `Купить за ${ this.product.original_price } руб.`;
}
}
...
</script>