🦜
открой консоль браузера, и посмотри, что тебе вернет
🦜
массив
Aleksey
Anonymous
Anonymous
Сам открой и посмотри.
🦜
алло, если я могу работать как с массивов
🦜
то это массив
🦜
метод утки
Aleksey
document.querySelectorAll('body') instanceof Array
false
Павел
в node-list же не добавишь так ниче)
Aleksey
нет, это не массив, у него нет методов массива
Anonymous
document.querySelectorAll('.buttons') instanceof Array
Anonymous
лол
Anonymous
Andrew
http://prntscr.com/jd7xn5
Anonymous
И ты не можешь работать как с массивом.
Anonymous
У массива другой интерфейс.
Anonymous
Лол пздц
Aleksey
Да ладно, в свой первый раз я тоже удивился что это не массив )
Павел
Anonymous
document.querySelectorAll('.buttons').map
undefined
Anonymous
Смотря что нужно сделать.
Павел
и? можно его еще в строку конвертить, и как со строкой потом работать)) толку то?)
в исходный нодлист ты не добавишь ниче
Anonymous
забавная ситуация
Anonymous
Если нужно добавить ноду в реальный дом, то сначала нужно добавить, а потом обращаться к коллекции.
Дмитрий
да жопу конвертировать. Заключу то что нужно в функцию и повешу на разные события
Дмитрий
Дима
Нодлист это жесть, по возможности не работайте с ним
Anonymous
в консоли меняет, в документе нет..
var i = 0;
finderKov.replace(/"/g, function(){return (i++ % 2) ? 'X1' : 'X2'});
i = 1;
Anonymous
Anonymous
Или просто сразу конвертить?
Дмитрий
Дима
Сразу
Павел
Aleksey
Дима
Ладно Нодлист мутабелен, но он сцук ещё и интерактивен
Дима
И это ппц
Anonymous
Anonymous
Дима
🦜
Окей, как нод лист конвертить в массив?
Anonymous
Хуя
Дима
Реально не то с чем хотелось бы иметь дело
Дмитрий
мазила орг предлагает копировать медоды array.prototype в nodelist.prototype:
var arrayMethods = Object.getOwnPropertyNames( Array.prototype );
arrayMethods.forEach( attachArrayMethodsToNodeList );
function attachArrayMethodsToNodeList(methodName)
{
if(methodName !== "length") {
NodeList.prototype[methodName] = Array.prototype[methodName];
}
};
var divs = document.getElementsByTagName( 'div' );
var firstDiv = divs[ 0 ];
firstDiv.childNodes.forEach(function( divChild ){
divChild.parentNode.style.color = '#0F0';
});
Дима
Pavel
[...nodeList]
Pavel
👍
🦜
🦜
...
Павел
Anonymous
Дмитрий
в MDN все же написано:
var div_list = document.querySelectorAll('div'); // returns NodeList
var div_array = Array.prototype.slice.call(div_list); // преобразует NodeList в Array
Павел
Nikita
ребят чем отличается serve от browsersync? так если вкратце
Павел
господи, да почему бы не загуглить?
Дмитрий
Anonymous
хмхм.. видимо я вас замучаю сегодня)
есть идейки- почему каждая запись начинает дублироваться?
var iKov = 0;
var changerKov = finderKov.replace(/"/g, function(){return (iKov++ % 2) ? '»' : '«'});
console.log(changerKov);
iKov = 1;
вот например:
«Улыбающееся» табло скорости появилось на трассе М-7 «Волга»
«Улыбающееся» табло скорости появилось на трассе М-7 «Волга»
console.log(finderKov);
отдает все в единичных экземплярах
Дмитрий
Aleksey
Anonymous
Дмитрий
Прикольно
Aleksey
Anonymous
Anonymous
массивом бы как нибудь получать, а не строкой.. и вообще проблем бы не было
Aleksey
чтото типа
.replace(/\"(.+)\"/, '«$1»')
Aleksey
✙ Vitalii ✙
может кто-то сказать по какой причине moment js может не менять время?
let date = moment(data.date) || moment.utc();
let mDate = date.hour(date.hour() - 1 );
как почитал в доке - таким образом могу сделать разницу в час , просто засетить
но время почему-то не меняется
Aleksey
Taras
✙ Vitalii ✙
Taras
пробовал, не помогло
Хз, ето рабочий вариант. Тестани в консольлоге moment().substract(4, 'hours').format('hh:mm')
Den
Народ, вот такая небольшая проблемка возникла.
var key = projectHtml && projectHtml.querySelector('meta[name="keywords"]') && projectHtml.querySelector('meta[name="keywords"]').getAttribute("content") ? projectHtml.querySelector('meta[name="keywords"]').getAttribute("content") : null;
Знаю, что ад. Я тупо проверяю на undefined и прочие каждый из элементов, чтобы не было ошибки. Как лучше обработать всё это?
Den
Кроме try&catch есть методы получше?
vindi
lodash.get (делает то же самое, но выглядит красиво)
Sergey
lodash get ?