-
Notifications
You must be signed in to change notification settings - Fork 31
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Functions #169
base: master
Are you sure you want to change the base?
Functions #169
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. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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
|
||
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
În caz contrar, solicită o confirmare și returnează rezultatul. | |
În caz contrar aceasta cere o confirmare și îi returnează rezultatul. |
@@ -14,7 +14,7 @@ let x = prompt("x?", ''); | |||
let n = prompt("n?", ''); | |||
|
|||
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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`); |
|
||
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Î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. |
|
||
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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. |
@@ -470,32 +470,32 @@ function isPrime(n) { | |||
} | |||
``` | |||
|
|||
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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*. |
|
||
A function declaration looks like this: | ||
O declarație de funcție arată astfel: | ||
|
||
```js | ||
function name(parameters, delimited, by, comma) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- 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. |
|
||
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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". |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Încă puține modificări minore.
|
||
```js run | ||
function showMessage() { | ||
*!* | ||
let message = "Hello, I'm JavaScript!"; // local variable | ||
let message = "Bună, sunt JavaScript!"; // variabilă locală |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
let message = "Bună, sunt JavaScript!"; // variabilă locală | |
let message = "Bună, sunt JavaScript!"; // variabilă locală |
Spațiu în plus
|
||
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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
text = text || '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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// 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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
````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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
````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" |
|
||
```js | ||
return*!*;*/!* | ||
(some + long + expression + or + whatever * f(a) + f(b)) | ||
``` | ||
|
||
So, it effectively becomes an empty return. | ||
Deci, devine efectiv un `return` gol. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
## 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] |
``` | ||
|
||
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
@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*: ***@***.***
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sunt câteva comentarii care nu au fost adresate și bucăți netraduse (care au fost introduse cand am rezolvat acel merge conflict
)
Am găsit și câteva ghilimele formatate greșit.
In both cases, `return confirm('Did parents allow you?')` executes exactly when the `if` condition is falsy. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Netradus
``` | ||
|
||
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: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Netradus
``` | ||
|
||
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: | ||
|
||
```js | ||
showMessage("Ann", undefined); // Ann: no text given |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Netradus
|
||
On the other hand, it's independently called every time when `text` is missing. | ||
Pe de altă parte, este apelat independent de fiecare dată când lipsește `text`. | ||
``` | ||
|
||
````smart header="Default parameters in old JavaScript code" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Netradus
@@ -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. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Netradus
|
||
```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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// dacă textul este nedefinit sau fals, setați-l ca „gol” | |
// dacă textul este nedefinit sau fals, setați-l ca 'empty' |
text = text || '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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// 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)) | ||
``` | ||
That doesn't work, because JavaScript assumes a semicolon after `return`. That'll work the same as: | ||
Asta nu funcționează, deoarece JavaScript presupune un punct și virgulă după `return`. Asta va funcționa la fel ca: | ||
|
||
```js | ||
return*!*;*/!* | ||
(some + long + expression + or + whatever * f(a) + f(b)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Netradus
Please make the requested changes. After it, add a comment "/done". |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.
În ambele cazuri, `return confirmă('Ți-au permis părinții?')` se execută exact când condiția `if` este falsă. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Î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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- `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). |
|
||
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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ă `_`. |
|
||
The first variant uses a label: | ||
Prima variantă folosește o etichetă: | ||
|
||
```js | ||
function showPrimes(n) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
comentariul poate fi tradus
@@ -488,7 +489,7 @@ function showPrimes(n) { | |||
} | |||
``` | |||
|
|||
The second variant uses an additional function `isPrime(n)` to test for primality: | |||
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
și aici comentariul poate fi tradus
@@ -508,32 +509,32 @@ function isPrime(n) { | |||
} | |||
``` | |||
|
|||
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.