Sobes.tech

Frontend

/* Ce va fi afișat în consolă */ console.log(1); Promise.resolve().then(() => console.log(2)); setTimeout(() => console.log(3)); Promise.resolve().then(() => console.log(4)); console.log(5); setTimeout(() => { Promise.resolve().then(() => console.log(6)); console.log(7); Promise.resolve().then(() => console.log(8)); }, 0); setTimeout(() => console.log(9));

274

/* Scrieți tipul MyReadonly - face ca toate câmpurile să fie doar pentru citire */ type User = { id: number name: string } type MyReadonly<T> = any const user: MyReadonly<User> = { id: 1, name: "John" } user.name = "Jane"

225

/* Scrie tipul MyRequired — face ca toate câmpurile opționale să fie obligatorii */ type User = { id?: number name?: string } type MyRequired<T> = { } const user1: MyRequired<User> = { id: 1, name: "John" } const user2: MyRequired<User> = { id: 1 }

192

/* Ce se va afișa în consolă */ async function f() { console.log(1); const promise = new Promise((resolve) => { console.log(2); setTimeout(() => { console.log(3); resolve("gata!"); console.log(4); }); }); console.log(5); const result = await promise; console.log(6); console.log(result); return "Rezultat"; } f(); console.log(7);

187
/4