Conversation
|
MarinaG seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account. You have signed the CLA already but the status is still pending? Let us recheck it. |
bogdanbacosca
left a comment
There was a problem hiding this comment.
Mai sunt câteva schimbări minore care trebuiesc implementate.
1-js/02-first-steps/15-function-basics/1-if-else-required/task.md
Outdated
Show resolved
Hide resolved
| Următoarea funcție returnează `true` dacă parametrul `age` este mai mare decât `18`. | ||
|
|
||
| Otherwise it asks for a confirmation and returns its result. | ||
| În caz contrar, solicită o confirmare și returnează rezultatul. |
There was a problem hiding this comment.
| În caz contrar, solicită o confirmare și returnează rezultatul. | |
| În caz contrar aceasta cere o confirmare și îi returnează rezultatul. |
|
|
||
| if (n < 1) { | ||
| alert(`Power ${n} is not supported, use a positive integer`); | ||
| alert(`Puterea ${n} nu este acceptată, utilizați un număr întreg pozitiv`); |
There was a problem hiding this comment.
Am putea folosi susținut pentru a traduce supported peste tot -- pentru consisteță.
| alert(`Puterea ${n} nu este acceptată, utilizați un număr întreg pozitiv`); | |
| alert(`Puterea ${n} nu este susținută, utilizați un număr întreg pozitiv`); |
| # Funcții | ||
|
|
||
| Quite often we need to perform a similar action in many places of the script. | ||
| Destul de des avem nevoie să realizăm o acțiune similară în multe locuri ale secvenței de instrucțiuni. |
There was a problem hiding this comment.
În unele cazuri, putem să nu traducem termenii tehnici dacă nu există o conveție bine definită în limba română.
| Destul de des avem nevoie să realizăm o acțiune similară în multe locuri ale secvenței de instrucțiuni. | |
| Destul de des avem nevoie să realizăm o acțiune similară în multe locuri ale script-ului. |
| Funcțiile sunt principalele "blocuri de construcție" ale programului. Ele permit apelarea codului de mai multe ori fără repetare. | ||
|
|
||
| We've already seen examples of built-in functions, like `alert(message)`, `prompt(message, default)` and `confirm(question)`. But we can create functions of our own as well. | ||
| Am văzut deja exemple de funcții încorporate, precum `alert(message)`, `prompt(message, default)` și `confirm(question)`. Dar putem crea și funcții proprii. |
There was a problem hiding this comment.
| Am văzut deja exemple de funcții încorporate, precum `alert(message)`, `prompt(message, default)` și `confirm(question)`. Dar putem crea și funcții proprii. | |
| Am văzut deja exemple de funcții încorporate, precum `alert(message)`, `prompt(message, default)` și `confirm(question)`. Dar putem crea și funcții proprii de asemenea. |
| ``` | ||
|
|
||
| The second variant is easier to understand, isn't it? Instead of the code piece we see a name of the action (`isPrime`). Sometimes people refer to such code as *self-describing*. | ||
| A doua variantă este mai ușor de înțeles, nu-i aşa? În loc de piesa de cod, vedem un nume al acțiunii (`isPrime`). Uneori, oamenii se referă la un astfel de cod ca la *auto-descriere*. |
There was a problem hiding this comment.
| A doua variantă este mai ușor de înțeles, nu-i aşa? În loc de piesa de cod, vedem un nume al acțiunii (`isPrime`). Uneori, oamenii se referă la un astfel de cod ca la *auto-descriere*. | |
| A doua variantă este mai ușor de înțeles, nu-i aşa? În loc de piesa de cod, vedem un nume al acțiunii (`isPrime`). Uneori, oamenii se referă la un astfel de cod ca *auto-descriptiv*. |
| O declarație de funcție arată astfel: | ||
|
|
||
| ```js | ||
| function name(parameters, delimited, by, comma) { |
There was a problem hiding this comment.
| function name(parameters, delimited, by, comma) { | |
| function name(parametri, delimitați, de, virgulă) { |
| - A function may access outer variables. But it works only from inside out. The code outside of the function doesn't see its local variables. | ||
| - A function can return a value. If it doesn't, then its result is `undefined`. | ||
| - Valorile transmise unei funcții ca parametri sunt copiate în variabilele locale. | ||
| - funcția poate accesa variabile exterioare. Dar funcționează numai din interior spre exterior. Codul din afara funcției nu vede variabilele locale. |
There was a problem hiding this comment.
| - funcția poate accesa variabile exterioare. Dar funcționează numai din interior spre exterior. Codul din afara funcției nu vede variabilele locale. | |
| - Funcția poate accesa variabile exterioare. Dar funcționează numai din interior spre exterior. Codul din afara funcției nu vede variabilele locale. |
| Pentru a face codul curat și ușor de înțeles, este recomandat să folosiți în principal variabile și parametri locali în funcție, nu variabile exterioare. | ||
|
|
||
| It is always easier to understand a function which gets parameters, works with them and returns a result than a function which gets no parameters, but modifies outer variables as a side-effect. | ||
| Este întotdeauna mai ușor de înțeles o funcție care primește parametri, lucrează cu ele și returnează un rezultat, decât o funcție care nu primește niciun parametru, dar modifică variabilele exterioare ca efect secundar. |
There was a problem hiding this comment.
ei se referă la parametri
| Este întotdeauna mai ușor de înțeles o funcție care primește parametri, lucrează cu ele și returnează un rezultat, decât o funcție care nu primește niciun parametru, dar modifică variabilele exterioare ca efect secundar. | |
| Este întotdeauna mai ușor de înțeles o funcție care primește parametri, lucrează cu ei și returnează un rezultat, decât o funcție care nu primește niciun parametru, dar modifică variabilele exterioare ca efect secundar. |
|
Please make the requested changes. After it, add a comment "/done". |
bogdanbacosca
left a comment
There was a problem hiding this comment.
Încă puține modificări minore.
| function showMessage() { | ||
| *!* | ||
| let message = "Hello, I'm JavaScript!"; // local variable | ||
| let message = "Bună, sunt JavaScript!"; // variabilă locală |
There was a problem hiding this comment.
| let message = "Bună, sunt JavaScript!"; // variabilă locală | |
| let message = "Bună, sunt JavaScript!"; // variabilă locală |
Spațiu în plus
| ## Valori implicite | ||
|
|
||
| If a function is called, but an argument is not provided, then the corresponding value becomes `undefined`. | ||
| Dacă o funcție este apelată, dar nu este oferit un argument, atunci valoarea corespunzătoare devine `nedefinită`. |
There was a problem hiding this comment.
| Dacă o funcție este apelată, dar nu este oferit un argument, atunci valoarea corespunzătoare devine `nedefinită`. | |
| Dacă o funcție este apelată, dar nu este oferit un argument, atunci valoarea corespunzătoare devine `undefined`. |
Undefined este un cuvânt rezervat
| ``` | ||
|
|
||
| Modern JavaScript engines support the [nullish coalescing operator](info:nullish-coalescing-operator) `??`, it's better when most falsy values, such as `0`, should be considered "normal": | ||
| Motoarele JavaScript moderne susțin [nullish coalescing operator](info:nullish-coalescing-operator) `??`, este mai bine atunci când majoritatea valorilor false, cum ar fi `0`, ar trebui considerate „normale”: |
There was a problem hiding this comment.
| Motoarele JavaScript moderne susțin [nullish coalescing operator](info:nullish-coalescing-operator) `??`, este mai bine atunci când majoritatea valorilor false, cum ar fi `0`, ar trebui considerate „normale”: | |
| Motoarele JavaScript moderne susțin [nullish coalescing operator](info:nullish-coalescing-operator) `??`, este mai bine atunci când majoritatea valorilor falsy, cum ar fi `0`, ar trebui considerate „normale”: |
Falsy este un termen tehnic
| ```js run | ||
| function showCount(count) { | ||
| // if count is undefined or null, show "unknown" | ||
| // dacă numărul este nedefinit sau nul, afișază „necunoscut” |
There was a problem hiding this comment.
| // dacă numărul este nedefinit sau nul, afișază „necunoscut” | |
| // dacă count este undefined sau null, afișază „necunoscut” |
count este un parametru definit
|
|
||
| ````smart header="A function with an empty `return` or without it returns `undefined`" | ||
| If a function does not return a value, it is the same as if it returns `undefined`: | ||
| ````smart header=" O funcție cu un 'return' gol sau fara o returnare este 'undefined'" |
There was a problem hiding this comment.
| ````smart header=" O funcție cu un 'return' gol sau fara o returnare este 'undefined'" | |
| ````smart header="O funcție cu un `return` gol sau fără o returnare este `undefined`" |
Formatare
|
|
||
| ````warn header="Never add a newline between `return` and the value" | ||
| For a long expression in `return`, it might be tempting to put it on a separate line, like this: | ||
| ````warn header="Nu adăugați niciodată o linie nouă între `return` și o valoare" |
There was a problem hiding this comment.
| ````warn header="Nu adăugați niciodată o linie nouă între `return` și o valoare" | |
| ````warn header="Nu adăugați niciodată o linie nouă între `return` și valoare" |
| ``` | ||
|
|
||
| So, it effectively becomes an empty return. | ||
| Deci, devine efectiv un `return` gol. |
There was a problem hiding this comment.
| Deci, devine efectiv un `return` gol. | |
| Deci, devine efectiv un return gol. |
Textul original nu are formatare, dar poate fi adăugată printr-un PR separat în repozitoriul din limba engleză.
| ```` | ||
|
|
||
| ## Naming a function [#function-naming] | ||
| ## Denumirea unei funcții [#function-naming] |
There was a problem hiding this comment.
| ## Denumirea unei funcții [#function-naming] | |
| ## Denumind o funcție [#function-naming] |
sau
| ## Denumirea unei funcții [#function-naming] | |
| ## Numind o funcție [#function-naming] |
| checkPermission(..) // verifică o permisiune, returnează true/false | ||
| ``` | ||
|
|
||
| With prefixes in place, a glance at a function name gives an understanding what kind of work it does and what kind of value it returns. |
There was a problem hiding this comment.
With prefixes in place, a glance at a function name gives an understanding of what kind of work it does and what kind of value it returns.
|
Please make the requested changes. After it, add a comment "/done". |
|
@marina-t-itf Am rezolvat câteva |
|
@bogdanbacosca <https://github.com/bogdanbacosca> Am faucet modificarile.
Te rog sa ma anunti daca mai sunt necesare si altele.
P.S: Este prima data cand lucrez intr-un proiect si cand folosesc PR. Este
posibil sa fac greseli. Te rog sa ma anunti daca este cazul sa le remediez.
Multumesc pentru ajutor.
…On Wed, Jan 25, 2023 at 7:20 AM Bogdan Bacoșcă ***@***.***> wrote:
@marina-t-itf <https://github.com/marina-t-itf> Am rezolvat câteva merge
conflicts, sunt câteva bucăți netraduse adăugate.
—
Reply to this email directly, view it on GitHub
<#169 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AY7PNYAP3H4ZYDLKZ2PA373WUCZ2RANCNFSM6AAAAAAT7JTIGE>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
--
Multumesc,
*___________________________________*
*Gabor Marina Loredana*
*Telefon*: *0737 557 623*
*E*-*mail*: ***@***.***
|
| Nicio diferență! | ||
|
|
||
| In both cases, `return confirm('Did parents allow you?')` executes exactly when the `if` condition is falsy. No newline at end of file | ||
| In both cases, `return confirm('Did parents allow you?')` executes exactly when the `if` condition is falsy. |
| Now if the `text` parameter is not passed, it will get the value `"no text given"`. | ||
| Acum dacă parametrul `text` nu este trecut, va primi valoarea `"nu este dat niciun text" | ||
|
|
||
| The default value also jumps in if the parameter exists, but strictly equals `undefined`, like this: |
| The default value also jumps in if the parameter exists, but strictly equals `undefined`, like this: | ||
|
|
||
| ```js | ||
| showMessage("Ann", undefined); // Ann: no text given |
| Pe de altă parte, este apelat independent de fiecare dată când lipsește `text`. | ||
| ``` | ||
|
|
||
| ````smart header="Default parameters in old JavaScript code" |
| @@ -267,52 +267,52 @@ function showMessage(from, text) { | |||
|
|
|||
| Sometimes it makes sense to assign default values for parameters at a later stage after the function declaration. | |||
| ```js | ||
| function showMessage(text) { | ||
| // if text is undefined or otherwise falsy, set it to 'empty' | ||
| // dacă textul este nedefinit sau fals, setați-l ca „gol” |
There was a problem hiding this comment.
| // dacă textul este nedefinit sau fals, setați-l ca „gol” | |
| // dacă textul este nedefinit sau fals, setați-l ca 'empty' |
| ``` | ||
|
|
||
| Modern JavaScript engines support the [nullish coalescing operator](info:nullish-coalescing-operator) `??`, it's better when most falsy values, such as `0`, should be considered "normal": | ||
| Motoarele JavaScript moderne susțin [nullish coalescing operator](info:nullish-coalescing-operator) `??`, este mai bine atunci când majoritatea valorilor false, cum ar fi `0`, ar trebui considerate „normale”: |
There was a problem hiding this comment.
| Motoarele JavaScript moderne susțin [nullish coalescing operator](info:nullish-coalescing-operator) `??`, este mai bine atunci când majoritatea valorilor false, cum ar fi `0`, ar trebui considerate „normale”: | |
| Motoarele JavaScript moderne susțin [nullish coalescing operator](info:nullish-coalescing-operator) `??`, este mai bine atunci când majoritatea valorilor false, cum ar fi `0`, ar trebui considerate "normale": |
| ```js run | ||
| function showCount(count) { | ||
| // if count is undefined or null, show "unknown" | ||
| // dacă numărul este nedefinit sau nul, afișază „necunoscut” |
There was a problem hiding this comment.
| // dacă numărul este nedefinit sau nul, afișază „necunoscut” | |
| // dacă numărul este nedefinit sau nul, afișază "necunoscut" |
|
|
||
| ```js | ||
| return*!*;*/!* | ||
| (some + long + expression + or + whatever * f(a) + f(b)) |
|
Please make the requested changes. After it, add a comment "/done". |
bogdanbacosca
left a comment
There was a problem hiding this comment.
Avem câteva bucăți netraduse, o linie în plus, am modifical fals cu falsy pentru că este un termen tehnic, am modificat în unele părți transmis în loc de trecut (pentru consistență).
Vezi toate comentariile pentru mai multe detalii.
Mulțumesc pentru PR 👍 😄
Încă putine modificări și este gata.
| Nicio diferență. | ||
|
|
||
| In both cases, `return confirm('Did parents allow you?')` executes exactly when the `if` condition is falsy. No newline at end of file | ||
| În ambele cazuri, `return confirmă('Ți-au permis părinții?')` se execută exact când condiția `if` este falsă. No newline at end of file |
There was a problem hiding this comment.
| În ambele cazuri, `return confirmă('Ți-au permis părinții?')` se execută exact când condiția `if` este falsă. | |
| În ambele cazuri, `return confirm('Ți-au permis părinții?')` se execută exact când condiția `if` este falsy. |
falsy este un termen tehnic
| ``` | ||
|
|
||
| Rewrite it, to perform the same, but without `if`, in a single line. | ||
| Rescrie-l, pentru a efectua la fel, dar fără `if`, într-o singură linie. |
There was a problem hiding this comment.
| Rescrie-l, pentru a efectua la fel, dar fără `if`, într-o singură linie. | |
| Rescrie-l, pentru a efectua același lucru, dar fără `if`, într-o singură linie. |
| @@ -1,7 +1,7 @@ | |||
|
|
|||
| # Apelarea asincronă din non-asincronă | |||
| # Call async from non-async | |||
There was a problem hiding this comment.
Versiunea în Engleză s-a suprapus peste traducere.
Trebuie ajustată toată sarcina.
| ``` | ||
|
|
||
| The function has full access to the outer variable. It can modify it as well. | ||
| Funcția are acces complet la variabila exterioară. Il poate modifica si ea. |
There was a problem hiding this comment.
| Funcția are acces complet la variabila exterioară. Il poate modifica si ea. | |
| Funcția are acces deplin la variabila exterioară. O poate modifica de asemenea. |
| - `checkPermission` -- would be bad if it displays the `access granted/denied` message (should only perform the check and return the result). | ||
| - `getAge` -- ar fi rău dacă arată o `alert` cu vârsta (ar trebui doar să obțină). | ||
| - `createForm` -- ar fi rău dacă ar modifica documentul, adăugându-i o formă (ar trebui doar să-l creeze și să-l returneze). | ||
| - `checkPermission` -- ar fi rău dacă afișează mesajul „acces acordat/refuzat”. (ar trebui să efectueze doar verificarea și să returneze rezultatul). |
There was a problem hiding this comment.
| - `checkPermission` -- ar fi rău dacă afișează mesajul „acces acordat/refuzat”. (ar trebui să efectueze doar verificarea și să returneze rezultatul). | |
| - `checkPermission` -- ar fi rău dacă afișează mesajul "acces acordat/refuzat". (ar trebui să efectueze doar verificarea și să returneze rezultatul). |
| Funcțiile care sunt folosite *foarte des* au uneori nume ultrascurte. | ||
|
|
||
| For example, the [jQuery](https://jquery.com/) framework defines a function with `$`. The [Lodash](https://lodash.com/) library has its core function named `_`. | ||
| Ca de exemplu, framework-ul [jQuery](http://jquery.com) definește o funcție cu `$`. Librăria [Lodash](http://lodash.com/) are funcția sa de bază numită `_`. |
There was a problem hiding this comment.
| Ca de exemplu, framework-ul [jQuery](http://jquery.com) definește o funcție cu `$`. Librăria [Lodash](http://lodash.com/) are funcția sa de bază numită `_`. | |
| Ca de exemplu, framework-ul [jQuery](https://jquery.com) definește o funcție cu `$`. Librăria [Lodash](https://lodash.com/) are funcția sa de bază numită `_`. |
| Prima variantă folosește o etichetă: | ||
|
|
||
| ```js | ||
| function showPrimes(n) { |
There was a problem hiding this comment.
comentariul poate fi tradus
| A doua variantă folosește o funcție adițională `isPrime(n)` pentru a testa primalitatea: | ||
|
|
||
| ```js | ||
| function showPrimes(n) { |
There was a problem hiding this comment.
și aici comentariul poate fi tradus
| ``` | ||
|
|
||
| The second variant is easier to understand, isn't it? Instead of the code piece we see a name of the action (`isPrime`). Sometimes people refer to such code as *self-describing*. | ||
| A doua variantă este mai ușor de înțeles, nu-i aşa? În loc de piesa de cod, vedem un nume al acțiunii (`isPrime`). Uneori, oamenii se referă la un astfel de cod ca *auto-descriptiv*. |
There was a problem hiding this comment.
| A doua variantă este mai ușor de înțeles, nu-i aşa? În loc de piesa de cod, vedem un nume al acțiunii (`isPrime`). Uneori, oamenii se referă la un astfel de cod ca *auto-descriptiv*. | |
| A doua variantă este mai ușor de înțeles, nu-i aşa? În loc de bucata de cod, vedem un nume al acțiunii (`isPrime`). Uneori, oamenii se referă la un astfel de cod ca *auto-descriptiv*. |
|
Please make the requested changes. After it, add a comment "/done". |
No description provided.