- Нужно ли бандлить библиотеки из node_modules?
- Как использовать dist библиотек из node_modules?
- Зачем dist в библиотеках, если вдруг это не используется при бандле webpack?
[
$("#one-cont"),
$("#two-cont"),
$("#three-cont"),
$("#four-cont"),
]
.forEach((target, i, tabs) => target.on(
'click',
(event) => {
tabs.forEach(tab => tab.removeClass("activecont"));
target.addClass("activecont");
event.preventDefault();
},
));
Но все же первый вопрос мне не понятен, почему нельзя объявить переменную внутри цикла, и присваивать ей значения массива
for(let i = 0; i < 10; i++) {
var summary = summary || 0;
summary += i;
}
console.log(summary);
constructor
работает как конструктор только в составе es6 класса.class Person {
constructor(name,age) {
this.name=name;
this.age=age;
}
};
var One = new Person("Alex", 32);
var Person = {
constructor: function(name,age){
this.name=name;
this.age=age;
}
};
var One = Object.create(new Person.constructor("Alex", 32));
console.log(One.name);
const focusedCallbacks = new WeakMap();
document.addEventListener('click', (e) => {
let target = e.target,
open = target.dataset.open ? target.dataset.open : 0,
close = target.dataset.close ? target.dataset.close : 0,
element = open || close ? document.querySelector(`[data-window=${open || close}]`) : 0,
if (open) {
element.classList.add(`${element.dataset.window}-open`);
focusedCallback.set(element,trapFocus.bind(null, element));
element.addEventListener('keydown', focusedCallback.get(element));
}
if (close) {
element.classList.remove(`${element.dataset.window}-open`);
element.removeEventListener('keydown', focusedCallback.get(element));
focusedCallback.delete(element);
}
});
function flat(obj) {
let arr = [];
Object.entries(obj).forEach(([key, value]) => {
if (value.show) {
arr.push(key);
if (value.child) {
arr = arr.concat(flat(value.child));
}
}
})
return arr;
}
const arr = flat(obj);