for (i = 0; i < dropdowns.length; i++) {
var openDropdown = dropdowns[i];
openDropdown.classList.remove('show');
}
document.getElementById(id).classList.toggle('show');
Что касается «opaque» — то он приходит в случаях, когда выполняется CORS запрос, но удаленный ресурс не возвращает CORS заголовки. Данный тип запроса не предоставляет доступ данным или заголовку статуса, поэтому мы не имеем возможности судить о результате выполнения запроса. В рамках текущей имплементации fetch() не представляется возможности выполнять CORS запросы из скоупа window, и вот здесь написано почему. Эта функциональность должна быть добавлена, как только Cache API станет доступным из объекта window.
{
template: `
<div>
<preloader v-if="!pageData" />
<div v-else >
...
</div>
</div>
`,
data() {
return {
pageData: null
}
},
async mounted() {
this.pageData = await getData()
}
}
const arr = [];
const obj = {name: 'John', surname: 'Doe'};
if (arr.every(o => o.name != obj.name || o.surname != obj.surname)) arr.push(obj);
[].every(v => v); // true
const nested = {
id: 1,
children: [
{ id: 2 },
{ id: 3,
children: [{ id: 5 }, { id: 6 }]
},
{ id: 4 }
]
}
const flatten = function(obj) {
const array = Array.isArray(obj) ? obj : [obj];
return array.reduce(function(acc, value) {
acc.push(value);
if (value.children) {
acc = acc.concat(flatten(value.children));
delete value.children;
}
return acc;
}, []);
}
flatten(nested); // => [ { id: 1 }, { id: 2 }, { id: 3 }, { id: 5 }, { id: 6 }, { id: 4 } ]