+
– это не только оператор сложения, но и оператор конкатенации (соединение строк).const x = +prompt("Введите число") // Унарный плюс преобразует операнд к числовому типу
let l = x + 10
console.log(l)
const x = Number(prompt("Введите число")) // Более явное преобразование
let l = x + 10
console.log(l)
const x = parseInt(prompt ("Введите число")) // Преобразование в целому числу
let l = x + 10
console.log(l)
const x = parseFloat(prompt ("Введите число")) // Преобразование к числу с плавающей точкой
let l = x + 10
console.log(l)
:root {
--color1: white;
}
body.dark {
--color1: black;
}
<body>
<script>
if (localStorage.getItem('theme') === 'dark') document.body.classList.add('dark');
</script>
<li class="nav-item theme-switcher-outer">
<a class="nav-link theme-switcher" href="javascript:switchTheme()">
<i class="fa fa-sun theme-switcher__light"></i>
<i class="fa fa-moon theme-switcher__dark"></i>
</a>
</li>
.theme-switcher {
&__light { display: none; }
&__dark { }
body.dark & {
&__light { display: inline; }
&__dark { display: none; }
}
}
function switchTheme() {
document.body.classList.toggle('dark');
localStorage.setItem('theme', document.body.classList.contains('dark') ? 'dark' : 'light');
}
worker.slow()
оборачивается в новую функцию-декоратор. Декоратор выполняет некую работу, вызывает оригинальную функцию, с ее результатом может выполнить еще какую-то работу, и возвращает итоговый результат.worker.slow = cachingDecorator(worker.slow, hash);
worker.slow
у вас уже не оригинал, а декоратор. Т.е. эта функцияfunction() {
let key = hash(arguments); // (*)
if (cache.has(key)) {
return cache.get(key);
}
let result = func.call(this, ...arguments); // (**)
cache.set(key, result);
return result;
};
arguments
.function cachingDecorator(func, hash) {
let cache = new Map();
return function(arg1, arg2) { // явно указать аргументы
let key = hash(arg1, arg2); // (*)
if (cache.has(key)) {
return cache.get(key);
}
let result = func.call(this, arg1, arg2); // (**)
cache.set(key, result);
return result;
};
}
Напиши конкретно что сделать нужно, я новичок в этом, ну или пример какой может
{
html: 'Your html markup',
last: false, // or true
}
$.ajax({
url:'index.php?route=module/loadMore',
type:"GET",
dataType: 'json',
data: {
module_id: '<?php echo $module_id; ?>',
page : 'id_<?php echo $module_id; ?>',
}
success:function (response) {
$('#app_<?php echo $module_id; ?>').append($(response.html).find('.gdfgdf'));
if (response.last) {
$('#more_button').hide();
}
}
});
input[type=chekbox]:focus + span {
// визуализация фокусного состояния для видимого индикатора
}
input[type=chekbox]:checked + span {
// визуализация отмеченного состояния для видимого индикатора
}
let accordionTriggers = document.querySelectorAll('.accordion-item__trigger');
accordionTriggers.forEach(trigger => item.addEventListener('click', () => {
const item = trigger.parentNode;
item.classList.toggle('accordion-item_active');
if(let icon = trigger.querySelector('.accordion-item__title-arrow-off')) {
icon.classList.remove('accordion-item__title-arrow-off')
}
});