Kaip dar galima gauti skaitinę reikšmę iš this (išskyrus Number(this))?
Frontend
/* Reikia įgyvendinti intersection metodą, kuris išplečia standartinius rinkinių (Set) metodus. Šis metodas priima kitą rinkinį kaip parametrą ir grąžina naują rinkinį, kuris yra pirminio ir perduoto rinkinių sankirta, t.y., turi tik tuos elementus, kurie yra abiejų rinkinių. */ // jūsų kodas const set1 = new Set([1, 2, 3, 4]); const set2 = new Set([3, 4, 5, 6, 7, 8]); console.log(...set1.intersection(set2)) // 3 4 --- Set.prototype.intersection = function (set2) { const result = new Set(); for(const value of this) { if (set2.has(value)) result.add(value); } return result; } const set1 = new Set([1, 2, 3, 4]); const set2 = new Set([3, 4, 5, 6, 7, 8]); console.log(...set1.intersection(set2)) // 3 4
/** * Implementuokite funkciją sumPromises, kuri * priima pažadus kaip argumentus ir grąžina * jų rezultatų sumą. * * Funkcija gali priimti bet kokį argumentų skaičių. * Bet kurį pažadų API galima naudoti. */ // Čia rašykite kodą // Pavyzdys naudojimo const promise1 = Promise.resolve(1); const promise2 = Promise.resolve(2); sumPromises(promise1, promise2).then(console.log); // 3
Parašykite sleep funkciją, kuri grąžina Promise ir baigiasi po nurodyto milisekundžių skaičiaus.
Paaiškinkite, kas nutiks su Promise apvalkalu, jei asyncCall klaidingai iškvies perduotą callback kelis kartus: pirmiausia su klaida, tada su duomenimis ir vėl su klaida.
Kur realioje programėlėje galėtų būti naudinga callLimit funkcija su galimybe iš naujo nustatyti skaitiklį?
Kuo skiriasi patikrinimas 'key in result' ir 'result.hasOwnProperty(key)'?
/** * Įgyvendinkite funkciją compose, kuri priima * kintamą funkcijų skaičių ir grąžina naują funkciją. * Kiekvienos funkcijos rezultatas perduodamas kitai. */ // Čia kodas const square = (x) => x * x; const times2 = (x) => x * 2; const sum = (a, b) => a + b; console.clear(); console.log(compose(square, times2)(2) === square(times2(2))); console.log(compose(square, times2, sum)(3, 4) === square(times2(sum(3, 4))));
Įgyvendinkite funkciją sumPromises, kuri priima pažadus kaip argumentus ir grąžina jų rezultatų sumą. Funkcija gali priimti bet kokį argumentų skaičių, galima naudoti bet kokius pažadų API.
Kaip galima paversti pseudo-masyvą arguments į tikrąjį masyvą? Paminėkite keletą būdų.
Kodėl sleep vykdymo laikas nėra tiksliai 1000 ir 2000 milisekundžių, bet šiek tiek daugiau? Kas veikia uždelsimą?
Kokius kitus Promise API metodus žinai, išskyrus Promise.all?
[vardas] paklausė: Ar atlikėjai patys aiškino sutartis esant paraleliniam vystymuisi?
Nustatykite, ar eilutė yra 'pangramma' — eilutė, kurioje yra kiekviena abėcėlės raidė bent kartą.
Kodėl naudojamas Array.prototype.slice.call(arguments)? Kaip veikia call ir apply?
9. Kopijavimas Testo metu profesorius Floyd pastebėjo, kad kai kurie studentai keičiasi pastabomis. Iš pradžių jis norėjo visiems duoti 2 balus, tačiau profesorius buvo geranoriškas, todėl nusprendė studentus padalinti į dvi grupes: tų, kurie leidžia kopijuoti, ir tik pirmos grupės duoti 2 balus. Profesorius užregistravo visas studentų poras, kurios keitėsi pastabomis. Reikia nustatyti, ar galima studentus padalinti į dvi grupes taip, kad bet koks pastabų keitimas vyktų iš vienos grupės studento į kitos grupės studentą. Įvesties formatas Pirmoje eilutėje yra du skaičiai N ir M — studentų skaičius ir studentų porų, kurios keitėsi pastabomis, skaičius (1 ≤ N ≤ 10^2, 0 ≤ M ≤ N(N-1)/2). Tolesnėse M eilutėse aprašyti studentų poros: du skaičiai, atitinkantys studentų numerius, kurie keitėsi pastabomis (studentų numeriai prasideda nuo 1, kiekviena pora yra išvardyta ne daugiau kaip vieną kartą). Išvesties formatas Reikia išspausdinti profesoriaus Floyd užduoties atsaką. Jei įmanoma studentus padalinti į dvi grupes, rašykite YES; kitaip, NO.
Perrašyti funkciją strjoin ES5 be rest operatoriaus
Duota sinchroninė funkcija ir laikas milisekundėmis. Reikia grąžinti šios funkcijos naują versiją, kurios vykdymas yra ribojamas nurodytu laiku. Jei funkcija įvykdoma per nustatytą laiką, pažadas išsprendžiamas su gautais duomenimis. Jei ne, pažadas atmetamas su eilute 'time limit exceeded'.
/** * Implementuokite funkciją isMonotonic, kuri priima * skaičių masyvą ir nustato, ar jis * yra monotoniškas (ne didėjantis ar ne mažėjantis). * * @param {Array<number>} numbers - skaičių masyvas * @return {boolean} - true, jei masyvas yra monotoniškas, kitaip false */ function isMonotonic(numbers) { // jūsų kodas čia }
Papaskink apie savo dabartinę darbo vietą ir projektą