$input = [
'111',
'222',
];
$arrays = [
[
'new',
'confirmed'
],
[
'7777',
'XXXX'
]
];
$params = [
'state',
'warehouse'
];
$result = [];
for ($i = 0; $i < count($input); $i++) {
$key = $input[$i];
$result[$key] = [];
for ($j = 0; $j < count($params); $j++) {
$result[$key][$params[$j]] = $arrays[$j][$i];
}
}
print_r($result);
You must use exactly one of the optional fields.
function findRoute(arr) {
const map = arr.reduce((acc, [from, to]) => (acc[from] = to, acc), {})
const result = []
let curr = arr[0][0]
while (curr) {
result.push(curr)
curr = map[curr]
}
return result
}
"failed":2 — истекло время действия ключа, нужно заново получить key методом groups.getLongPollServer.
function testFn<T extends Type, K extends TestKeys>(
obj: Partial<T>, key: K
): T[K]['value'] | undefined {
return key in obj ? obj[key]!.value : undefined
}
const ul = document.querySelector('ul');
const parent = ul.parentElement;
let e = null;
[...ul.children].forEach((li, i, arr) => {
if (li.classList.contains('main')) {
e && parent.appendChild(e);
e = document.createElement('ul');
} else if (i === arr.length - 1) {
parent.appendChild(e);
}
e.appendChild(li);
});
ul.remove();
form.addEventListener('submit', (e) => {
e.preventDefault();
const formData = new FormData(form);
formData.append('someField', someValue);
// ...
});
function a<T extends SomeType>(arg: T): void {
// ...
}
данная конструкция означает, что обобщённый тип T должен иметь все свойства SomeTypefunction a<T = SomeType>(arg: T): void {
// ...
}
в данном случае мы задаём дефолтное значение для обобщённого типа T, то есть по умолчанию он будет равен SomeType, подобно параметрам по умолчанию в обычном javascriptfunction a<T extends SomeType = DefaultType>(arg: T): void {
// ...
}
сливая всё воедино, мы получаем, что обобщённый тип T должен быть расширением SomeType и по умолчанию равен DefaultType (который тоже должен являться расширением SomeType) import { Document } from "mongoose";
interface User extends Document { /* */ }
markModified
, так как вы изменяете вложенный объектresult.markModified('orderReplies');