Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият.
Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание.
Използваме бисквитки и за измерване на маркетинговите ни усилия.
Вярно е, да.
Няма как при команда console.log("*".repeat(5).padLeft(10, "-").padRight(15, "+")); оутпута да е
"-----*****+++++" .
Аз не видях грешки в примерите. Идеята е както в C# работи падването - ако кажеш 15 символа, то ще ти падне стринга с колкото символи е необходимо, за да стане общата му дължина 15.
Аз доколкто разбирам условието, идеята не е да се направи нов стринг с дължина count, а count пъти стринга да се измеси наляво/надясно със знака във втория аргумент (или интервал по default)
В момента и аз тая задача пиша... :)
В допълнение на горното ми обяснение:
"*".repeat(5).padLeft(10, "-").padRight(15, "+")
Съгласен съм, че дадените примери работят точно както ти си ги описал. Но, ако се чете условието е съвсем различно:
string.padLeft(count, character) – returns a new string which contains count times the specified character at its beginning. character is optional and defaults to spacе
Буквално преведено това означава знака character да се добави отляво count пъти.
т.е. ако имаме:
var test = 'kiro';
test.padLeft(4, "*");
резултата трябва да е
****kiro
Според мен условието и примерите са сбъркани :)
Да, условието е подвеждащо; и аз в началото го направих другояче, но бързо си спомних как бачка PadLeft/PadRight в C# и не го мислих повече. Т.е. или идеята на автора е била друга и трябва да се коригира тази част от условието, или примерите да се нагласят спрямо условието.
Ами аз не знам как действат в C#, а и през ум не ми мина да сравнявам с други езици, за да разгадая какво ли е имал предвид авторът
Аз съм се придържала точно към условието(както го тълкуват по-горе VenelinGrozev и velio84 ). И много вече започвам да се дразня, защото не стига, че и аз трудно разумем материала и ако нямаше код тук щях да се метам през балкона, ами и се губи толкова време с глупости, заради неясноти и недоглеждания. Да не споменавам, че проверяващите домашни (ако още има такива) също тълкуват различно. Споменах го :)
Както и да е, благодаря, момчета, с малко надничане тук-там ги попреборих задачите.
Filkolev твоето разбиране е като че всичките функции трябва да следват обща логика но всъщност repeat(5), padLeft(10, "-") и padRight(15, "+") са отделни функции като всяка следваща получава за параметър резултатът от предходната. Де факто изразът "*".repeat(5).padLeft(10, "-").padRight(15, "+") е равносилена на
"*".repeat(5); // *****
"*****".padLeft(10, "-") //----------*****
"----------*****".padRight(15, "+") //----------*****+++++++++++++++
Ето един пример, където е описано по-подробно.
Това мнение се повтори, май понеже кликнах два пъти на Коментирай. Ако може някой модератор да го изтрие.
Падванията са си отделни функции, това което обясних е как работят в езиците, които сме ползвали до момента. Дадените примери са консистентни с поведението на такива функции в C#, PHP, но не и с условието. Т.е. по-вероятно е условието да е сбъркано, не примерите.
Според мен и двата варианта на решение трябва да ги считаме за верни. Единият отговаря на текста на условието, другият на примерите.
И за мен беше достатъчно да видя аутпута, за да променя решението да се съобразява с текущата дължина на this.
И на изпита ако има подобни разминавания - трябва да се следва аутпута.