fs.readFile(file, 'utf8', (readErr, data) => {
urls.forEach((url) => {
data = data.replace(url, `"<% static ${url} %>"`);
});
});fs.readFile(file, 'utf8', (readErr, data) => {
const content = urls.reduce((content, url) => {
return content.replace(url, `"<% static ${url} %>"`);
}, data);
});
element.click().
setInterval(function () {
next.items.forEach((item) => item.click())
}, 3000);var foo = function () { ... }
next.on('click', foo);
setInterval(foo, 3000);
window.param, а в просто param хранится значение аргумента.
arr.reduce((arr, n, i) => {
if (n === 1) {
arr.push(i);
}
return arr;
}, []);
span.line динамически меняется style="transform: translateY(0px);"
changeCollection как этой главной функции указать то что будет принимать сколько угодное количество массивов , а последним будет обработчик ?В современном js вот так:
changeCollection(...arrays, handler)function changeCollection() {
var handler = arguments[arguments.length - 1];
for (var i = 0; i < arguments.length - 1; i++) {
var array = arguments[i];
handler(array);
}
}function changeCollection() {
var handler = arguments[arguments.length - 1];
for (var i = 0; i < arguments.length - 1; i++) {
var array = arguments[i];
handler(array);
}
}
function deleteFunc(array) {
array.shift();
}
var one = [1 ,2 ,3];
var two = ['b', 'c'];
changeCollection(one, two, deleteFunc)
console.log(one, two); // [2, 3] ['c']const clone = [...original];. Но если у вас внутри массивов не примитивы и вы изменяете элементы, то нужно делать глубокое копирование.
var person = {
_name: 'Ivan'
}
Object.defineProperty(person, 'name' , {
get: function(){
console.log(this._name);
return this._name
}
})
let isHovering = false;
let intervalId = null;
targetElement.addEventListener('mouseenter', () => {
isHovering = true;
intervalId = setInterval(() => {
if (!isHovering) {
clearInterval(intervalId);
return;
}
row.scrollBy(/* params */);
}, 16)
});
targetElement.addEventListener('mouseleave', () => {
isHovering = false;
if (intervalId) {
clearInterval(intervalId);
}
});let intervalId = null;
targetElement.addEventListener('mouseenter', () => {
intervalId = setInterval(() => {
row.scrollBy(/* params */);
}, 16)
});
targetElement.addEventListener('mouseleave', () => clearInterval(intervalId));
var first = parseInt(prompt('Введите первое число'), 10);
var second = parseInt(prompt('Введите второе число'), 10);