заранее неизвестны вложенность и количество элементов
[].concat.apply([], array).reduce(function (res, item) { return res + item; })let array = [
[1, 2],
3, 4,
[5, [6, 7]],
[8, 9, 10]
];
1) почему когда тут меняю на false, то ничего не меняется?
bubbles: true
2) this.setVote = setVote; для того чтобы задать voter.setVote(5); ?
var voter = new Voter(....);
voter.setVote(....);elem.onmousedown = function() {
return false;
};
это для того, чтобы не работало выделение?
4) так если выводить var elem = options.elem; alert(elem); то получится div
почему бы написать var voteElem = querySelector('.voter').querySelector('.vote');
а не var voteElem = elem.querySelector('.vote');?
var elem = options.elem;, находим ссылку на элемент vote именно этого компонента var voteElem = elem.querySelector('.vote');.var voteElem = querySelector('.voter').querySelector('.vote');, но это сразу бы превратило компонент voter в одноразовый, т.е. такой компонент мог бы присутствовать на странице только в единственном экземпляре.
// создадим массив в который будем складывать промисы
const waitLoad = [];
results = results.slice(0, 1);
for (const key in results) {
if (results.hasOwnProperty(key)) {
const element = results[key];
element.introtext = h2p(element.introtext);
element.fulltext = h2p(element.fulltext);
// добавим промис полученный в
waitLoad.push(
clientGI.search(element.title)
.then(images => {
element.images = images.map(image => [image.url, image.thumbnail]);
// возвращаем промис который всегда выполнится
return Promise.resolve();
});
);
}
}
// когда все картинки загружены выполняем какие либо действия с ними
Promise.all(waitLoad).then(values => {
// ...
});
Неверно утверждение о том, что код на ассемблере работает быстрее всего. Точнее сказать верно только при одновременном соблюдении условий: конкретный процессор, конкретный разработчик, умеющий оптимизировать код под этот процессор. В среднем компилятор лучше знает о всевозможных оптимизациях.
var voter = new Voter(....);