#javascript #html #child-nodes
#javascript #HTML #дочерние узлы
Вопрос:
Array.from(document.querySelectorAll('.thread')).map((item) => {
if(item.childNodes[1].childNodes[1] === undefined){
console.log('hey')
}
})
Я хочу сказать, что если нет item.childNodes[1].childNodes[1]
, то сделайте что-нибудь. Вот и все.
Комментарии:
1.
Array.from
принимает второй аргумент, который совпадает с вызовом.map
, но не создает промежуточный массив.2. Извините, я не мог понять, что вы пытались сказать @SebastianSimon
3. Мой английский не настолько хорош, чтобы понять, что вы говорите, можете ли вы отредактировать мой код вместо этого?
4. Знаете ли вы, что это
childNodes
включает в себя не элементы, например Текстовые узлы?.children
содержит только элементы. Если вы уверены.childNodes
, используйте необязательный оператор цепочки .5. Если вы ориентируетесь на современный браузер, вы можете использовать необязательную цепочку :
if (item?.childNodes?.[1]?.childNodes?.[1] === undefined) {
Ответ №1:
Вы можете использовать необязательную цепочку :-
if(item?.childNodes?.[1]?.childNodes?.[1] === undefined){
console.log('hey')
}
Комментарии:
1. Кстати, у меня есть переменная с именем item на консоли.
2. Извините, что не понял вас.