Dlaczego wartość str
jest zwracana przy n = -1
?
function padIt(str, n) {
while (n--) str = (n & 1) ? (str + "*") : ("*" + str);
return str;
}
console.log(padIt("a", 5));
EDIT: Wcina wcięcia.
@Deykun: Coś takiego działa:
function padIt(str, n) {
str = str.padStart(str.length + Math.ceil(n / 2), "*");
str = str.padEnd(str.length + Math.floor(n / 2), "*");
return str;
}
console.log(padIt("a", 9));
Dlaczego wartość str
jest zwracana przy n = -1
?
function padIt(str, n) {
while (n--) str = (n & 1) ? (str + "*") : ("*" + str);
return str;
}
console.log(padIt("a", 5));
EDIT: Wcina wcięcia.
Dlaczego wartość str
jest zwracana przy n = -1
?
function padIt(str, n) {
while (n--) str = (n & 1) ? (str + "*") : ("*" + str);
return str;
}
console.log(padIt("a", 5));
EDIT: Wcina wcięcia.
@sens: Wtedy tak, ale chodziło mi o to, że n osiąga -1.
@spam_only: Spoko, wiem jak działa pętla, ale musiałem sobie uświadomić, że tam osiągane jest while(0)
, czyli false
.
Dlaczego wartość str
jest zwracana przy n = -1
?
function padIt(str, n) {
while (n--) str = (n & 1) ? (str + "*") : ("*" + str);
return str;
}
console.log(padIt("a", 5));
EDIT: Wcina wcięcia.
Dlaczego wartość str
jest zwracana przy n = -1
?
function padIt(str, n) {
while (n--) str = (n & 1) ? (str + "*") : ("*" + str);
return str;
}
console.log(padIt("a", 5));
EDIT: Wcina wcięcia.
@ajdajzler: Jak działają, to wiem, ale wyjaśnienie jest takie, że gdy osiągnie 0, wtedy while(0) będzie false i zakończy pętlę. Sprawdziłem i w C działa to tak samo.
Dlaczego wartość str
jest zwracana przy n = -1
?
function padIt(str, n) {
while (n--) str = (n & 1) ? (str + "*") : ("*" + str);
return str;
}
console.log(padIt("a", 5));
EDIT: Wcina wcięcia.
@ajdajzler: Czyli w takiej składni pętla zatrzyma się na 0. Dobry patent, chociaż nadal nie wiem dlaczego tak jest.
Dlaczego wartość str
jest zwracana przy n = -1
?
function padIt(str, n) {
while (n--) str = (n & 1) ? (str + "*") : ("*" + str);
return str;
}
console.log(padIt("a", 5));
EDIT: Wcina wcięcia.
@Deykun: Tu nie chodzi o operacje na bitach.
function padIt(str, n) {
while (n--) {
str = (n % 2 === 0) ? ("*" + str) : (str + "*");
}
return str;
}
console.log(padIt("a", 5));
Jeśli reszta z dzielenia n
przez 2 jest równa 0, dodaj gwiazdkę po lewej stronie od str
, inaczej po prawej. n
jest równe 5, a potem kolejno schodzi do -1.
Dlaczego wartość str
jest zwracana przy n = -1
?
function padIt(str, n) {
while (n--) str = (n & 1) ? (str + "*") : ("*" + str);
return str;
}
console.log(padIt("a", 5));
EDIT: Wcina wcięcia.
no nie wiem, mi wywala out of memory
@sens: W czym to uruchamiasz?
https://edube.org/sandbox/157592ee-3580-11ec-90e0-0242157e55ca
Also, przejedz ten kod w JS Tutor:
https://pythontutor.com/javascript.html#mode=edit
Dlaczego wartość str
jest zwracana przy n = -1
?
function padIt(str, n) {
while (n--) str = (n & 1) ? (str + "*") : ("*" + str);
return str;
}
console.log(padIt("a", 5));
EDIT: Wcina wcięcia.
Stary telewizor zakłócał łącze DSL codziennie przez 18 miesięcy [ENG]
Zakłócenie wykryto analizatorem widma.
0 comments Internet Zian arstechnica.com 0
Zwiastun "Jak Bóg szukał Karela"
Zwiastun filmu prezentowanego w ramach 17. Festiwalu Millennium Docs Against Gravity.
0 comments ateizm Zian youtube.com 0