Sobes.tech

Frontend

/* Cosa verrà visualizzato nella console */ 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));

264

/* Scrivi il tipo MyReadonly - rende tutti i campi di sola lettura */ type User = { id: number name: string } type MyReadonly<T> = any const user: MyReadonly<User> = { id: 1, name: "John" } user.name = "Jane"

215

/* Scrivi il tipo MyRequired — rende tutti i campi opzionali obbligatori */ type User = { id?: number name?: string } type MyRequired<T> = { } const user1: MyRequired<User> = { id: 1, name: "John" } const user2: MyRequired<User> = { id: 1 }

189

/* Cosa verrà visualizzato nella console */ async function f() { console.log(1); const promise = new Promise((resolve) => { console.log(2); setTimeout(() => { console.log(3); resolve("pronto!"); console.log(4); }); }); console.log(5); const result = await promise; console.log(6); console.log(result); return "Risultato"; } f(); console.log(7);

184
/4