item.onclick = function () {
answers.forEach((el, index) => (index !== i) ? el.classList.remove('question-item__text_active') : '');
icons.forEach((el, index) => (index !== i) ? el.classList.remove('question-item__icon_active') : '');
answers[i].classList.toggle('question-item__text_active');
icons[i].classList.toggle('question-item__icon_active');
};
let container;
let root;
const arr = [];
function genHtml() {
const ch1 = document.createElement('div');
const ch2 = document.createElement('div');
const ch3 = document.createElement('div');
container = ch3;
root = ch1;
ch2.appendChild(ch3);
ch1.appendChild(ch2);
for (let i = 0; i < 10000; i++) {
const el = document.createElement('div');
el.classList.add(`child-${i}`);
el.textContent = `child-${i}`;
container.appendChild(el);
}
document.body.appendChild(root);
}
function testChild() {
const start = performance.now();
for (let i = 0; i < 10000; i++) {
let page = root.children[0].children[0].children[i];
arr.push(page);
}
console.log('testChild:', performance.now() - start);
}
function testSelector() {
const start = performance.now();
for (let i = 0; i < 10000; i++) {
let page = document.querySelector('child-' + i);
arr.push(page);
}
console.log('testSelector:', performance.now() - start);
}
genHtml();
testChild();
testSelector();
npm install gulp-cli -g
- устанавливает сам gulp у систему, чтобы можно было запускать его команды.npm install gulp -D
- устанавливает gulp для текущего проекта, чтобы его можно было собрать галпом.
https://idangero.us/swiper/
https://glidejs.com/