Skip to content

Commit 402c6ae

Browse files
authored
Merge pull request #68 from meilune/master
Updating some old translations and adding new variables translation
2 parents 712fee8 + 6ed6af2 commit 402c6ae

File tree

13 files changed

+269
-269
lines changed

13 files changed

+269
-269
lines changed
+48-48
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1-
# Įvadas į JavaScript
1+
# JavaScript įvadas
22

3-
Pažvelkime kuo įpatinga JavaScript kalba, ką mes galime su ja padaryti ir kokios kitos technologijos gali būti naudojamos kartu su ja
3+
Pažvelkime kuo ypatinga JavaScript kalba, ką mes galime su ja padaryti ir kokios kitos technologijos gali būti naudojamos kartu.
44

55
## Kas yra JavaScript?
66

7-
Iš pat pradžių *JavaScript* buvo sukurtas tam, kad *"padaryti tinklalapius gyvus"*.
7+
Iš pat pradžių *JavaScript* buvo sukurta tam, kad *"padarytų tinklalapius gyvus"*.
88

9-
Programos, parašytos šia kalba yra vadinamos *skriptais*. Jos gali būti parašytos tinklalapio HTML ir veikti automatiškai, kuomet tinklalapis kraunamas.
9+
Programos, parašytos šia kalba yra vadinamos *skriptais* (and. scripts). Jos gali būti parašytos tinklalapio HTML ir suveikti automatiškai, kuomet tinklalapis kraunamas.
1010

11-
Skriptai yra rašomi ir vykdomi plain tekstu. Jiem nereikia kompiliavimo fazės.
11+
Skriptai yra rašomi ir vykdomi paprastu (ang. "plain") tekstu. Jiems nereikia kompiliavimo fazės.
1212

1313
Šiuo aspektu JavaScript labai skiriasi nuo [Java](https://en.wikipedia.org/wiki/Java_(programming_language)).
1414

@@ -18,100 +18,100 @@ Iš pat pradžių JavaScript turėjo kitą pavadinimą: "LiveScript". Tačiau Ja
1818
Tačiau ilgainiui JavaScript tapo nepriklausoma kalba, turinti atskirą specifikaciją, kuri vadinama [ECMAScript](http://en.wikipedia.org/wiki/ECMAScript). Šiuo metu JavaScript ir Java neturi nieko bendro.
1919
```
2020

21-
Dabar JavaScript gali būti vykdomas ne tik naršyklėje, bet taip pat ir serveryje arba praktiškai bet kokiame įrenginyje, kuris turi specialią programą, vadinama JavaScript varikliu [(JavaScript engine)](https://en.wikipedia.org/wiki/JavaScript_engine).
21+
Dabar JavaScript gali būti vykdomas ne tik naršyklėje, bet taip pat ir serveryje arba praktiškai bet kokiame įrenginyje, kuris turi specialią programą, vadinamą JavaScript varikliu [(JavaScript engine)](https://en.wikipedia.org/wiki/JavaScript_engine).
2222

23-
Naršyklės turi savo vidinį variklį, kuris kartais vadinamas "JavaScript virtuali mašiną"
23+
Naršyklės turi savo vidinį variklį, kuris kartais vadinamas "JavaScript virtuali mašina"
2424

25-
Skirtingi varikliai turi skirtingus "nickus". Pavyzdžiui:
25+
Skirtingi varikliai turi skirtingus slapyvardžius (ang. "nicknames"). Pavyzdžiui:
2626

2727
- [V8](https://en.wikipedia.org/wiki/V8_(JavaScript_engine)) -- Chrome ir Opera.
2828
- [SpiderMonkey](https://en.wikipedia.org/wiki/SpiderMonkey) -- Firefox.
29-
- Egzistuoja kitų nickų, tokių kaip "Trident", "Chakra" skirtingom IE versijom, "ChakraCore" Microsoft Edge naršklėje, "Nitro" ir "SquirellFish" Safari ir t.t.
29+
- Egzistuoja kiti slapyvardžiai, tokie kaip "Trident", "Chakra" skirtingoms IE versijom, "ChakraCore" Microsoft Edge naršklėje, "Nitro" ir "SquirellFish" Safari ir t.t.
3030

3131
Šias sąvokas verta atsiminti, nes jos naudojamos straipsniuose, skirtuose programuotojams. Mes taip pat jas naudosime. Pavyzdžiui, jeigu "feature X yra palaikoma V8", reiškias jinai ko gero veikia Chrome ir Opera naršklėse.
3232

3333
```smart header="Kaip veikia varikliai?"
3434
35-
Varikliai yra sudėtingi daiktai, bet basic'ai yra paprasti.
35+
Varikliai yra sudėtingi, bet pagrindai yra paprasti.
3636
37-
1. Variklis (vidinis, jei jis yra naršyklėje) skaito ("parsina") skriptą.
38-
2. Konvertuoja ("kompiliuoja") skriptą į mašininį kodą.
39-
3. Vykdomas mašininis kodas.
37+
1. Variklis (vidinis, jei jis yra naršyklėje) skaito (ang. "parsing") skriptą.
38+
2. Konvertuoja (dar kitaip - kompiliuoja) skriptą į mašininį kodą.
39+
3. Įvykdomas mašininis kodas.
4040
4141
Varikliai optimizuoja kodą kiekviename žingsnyje. Jie netgi stebi sukompiliuotą skriptą, kuomet jis vykdomas, bei analizuoja duomenis, kurie jame naudojami, ir pagal tai taiko papildomas optimizacijas. Po viso šio procesio, skriptai yra vykdomi gan greitai.
4242
```
4343

44-
## Ką gali JavaScript'as padaryti naršyklėje?
44+
## Ką gali JavaScript padaryti naršyklėje?
4545

46-
Modernus JavaScript'as yra "saugi" programavimo kalba. Ji neleidžia programuotojui pasiekti atminties arba CPU, nes iš pat pradžių ji buvo sukurta naršklėm, kuriom to nereikia.
46+
Modernus JavaScript yra "saugi" programavimo kalba. Ji neleidžia programuotojui pasiekti atminties arba CPU, nes iš pat pradžių ji buvo sukurta naršyklėms, kurioms to nereikia.
4747

48-
JavaScript'o galimybės stipriai priklauso nuo aplinkos, kurioje jis vykdomas. Pavyzdžiui, [Node.js](https://wikipedia.org/wiki/Node.js) palaiko funkcijas, kurios leidžia Javascript'ui skaityti/rašyti failus, vykdyti kompiuterių tinklų užklausas ir pan.
48+
JavaScript galimybės stipriai priklauso nuo aplinkos, kurioje ji vykdomas. Pavyzdžiui, [Node.js](https://wikipedia.org/wiki/Node.js) palaiko funkcijas, kurios leidžia Javascript skaityti/rašyti failus, vykdyti kompiuterių tinklų užklausas ir pan.
4949

50-
Naršyklėje JavaScript'as gali daryti bet ką, kas liečia tinklalapio manipuliacijas, interakcijas su vartotojais ir web serveriu.
50+
Naršyklėje JavaScript gali daryti bet ką, tame tarpe tinklalapio manipuliacijas, sąveikas (ang. "interaction") su vartotojais ir web serveriu.
5151

52-
Pavyzdžiui, JavaScript'as naršyklėje gali:
52+
Pavyzdžiui, JavaScript naršyklėje gali:
5353

5454
- Pridėti naują HTML į tinklalapį, pakeisti jau esamą turinį, pakeisti stilius.
5555
- Reaguoti į vartotojo veiksmus, pelės, klaviatūros paspaudimus.
56-
- Siųsti užklausas į remote serverius, atsisiųsti ir upload'inti failus ([AJAX](https://en.wikipedia.org/wiki/Ajax_(programming)) ir [COMET](https://en.wikipedia.org/wiki/Comet_(programming)) technologijos).
57-
- Gauti ir nustatyti cookies, klausti vartotojo, parodyti žinutes.
58-
- Išsaugoti duomenis kliento pusėje ("local storage").
56+
- Siųsti užklausas į nuotolinius (ang. "remote") serverius, atsisiųsti ir įkelti (ang. "upload") failus ([AJAX](https://en.wikipedia.org/wiki/Ajax_(programming)) ir [COMET](https://en.wikipedia.org/wiki/Comet_(programming)) technologijos).
57+
- Gauti ir nustatyti slapukus (ang. "cookies"), užduoti klausimus vartotojo ir parodyti žinutes.
58+
- Išsaugoti duomenis kliento pusėje (ang. "local storage").
5959

60-
## Ko NEGALI JavaScript'as naršyklėje?
60+
## Ko NEGALI PADARYTI JavaScript naršyklėje?
6161

62-
JavaScript'o galimybės naryklėje yra ribojamos dėl vartotojų saugumo. Tikslas - neleisti tinklalapiam pasiekti privačius duomenis arba žaloti vartotojo duomenis.
62+
JavaScript galimybės naryklėje yra ribojamos dėl vartotojų saugumo. Tikslas - neleisti tinklalapiams pasiekti privačius duomenis arba žaloti vartotojo duomenis.
6363

6464
Ribojimų pavyzdžiai:
65-
- JavaScript'as tinklalapyje negali skaityti/rašyti failus kietajame diske, juos kopijuoti arba vykdyti programas. JavaScript'as neturi tiesioginios prieigos prie operacinės sistemos funkcijų.
65+
- JavaScript tinklalapyje negali skaityti/rašyti failus esančius kietajame diske, juos kopijuoti arba vykdyti programas. JavaScript neturi tiesioginės prieigos prie operacinės sistemos funkcijų.
6666

67-
Modernios naršklės leidžia dirbti su failais, bet prieiga ribojama ir tai leidžiama tik jeigu vartotojas įvykdo kažką konkretaus. Pavyzdžiui, dragg'ina failą į naršklę arba pažymi failą per `<input>` tagą.
67+
Modernios naršklės leidžia dirbti su failais, bet prieiga ribojama ir tai leidžiama tik jeigu vartotojas įvykdo kažką konkretaus. Pavyzdžiui, perkelia failą į naršyklę arba pažymi failą naudodamas `<input>` žymą.
6868

69-
Yra būdų komunikuoti su kamera/mikrofonu ir kitais įrenginiais, bet tai reikalauja išreikštinio vartotojo leidimo. Taigi, JavaScript'inis tinklalapis negali suktai įjungti web kamerą, stebėti aplinką ir siųsti informaciją į [NSA](https://en.wikipedia.org/wiki/National_Security_Agency).
70-
- Skirtingi tabai dažniausiai nežino vienas apie kitą. Tačiau kartais vienas tab'as naudoja JavaScript tam, kad atidarytų kitą tab'ą, bet netgi tokiu atveju, JavaScript'as viename tab'e negali pasiekti kito tab'o, jeigu jie ateina iš skirtingų tinklalapių (skirtingas domenas, protokolas arba portas).
71-
Tai vadinama "Same Origin Policy". Tam, kad tai apeiti, *abudu tinklalapiai* turi sutikti apsikeisti duomenimis ir turėti specialų JavaScript kodą, kuris tai handlintų. Mes apie tai kalbėsime vienametutorialų.
72-
Šis ribojimas yra, vėlgi, dėl vartotojų saugmo. Tinklapis `http://anysite.com`, kurį vartotojas atidarė, neturėtų pasiekti kito naršklės tabo su URL `http://gmail.com` ir vogti informaciją.
73-
- JavaScript'as gali lengvai komunikuoti internetu su serveriu, iš kurio atėjo tinklalapis. Bet tinklalapio galimybės gauti duomenis iš kitų tinklapių/duomenų yra kiek sudėtingesnės. Nors ir įmanoma, tai reikalauja išreikštinio susitarimo (per HTTP header'ius) iš remote serverio pusės. Vėlgi, dėl saugumo priežasčių.
69+
Yra būdų komunikuoti su kamera/mikrofonu ir kitais įrenginiais, bet tai reikalauja išreikštinio vartotojo leidimo. Taigi, JavaScript tinklalapis negali suktai įjungti web kameros, stebėti aplinkos ir siųsti informaciją į [NSA](https://en.wikipedia.org/wiki/National_Security_Agency).
70+
- Atskiros naršyklės kortelės (ang. "tabs") dažniausiai nežino viena apie kitą. Tačiau kartais viena kortelė naudoja JavaScript tam, kad atidarytų kitą kortelę, bet netgi tokiu atveju, JavaScript vienoje kortelėje negali pasiekti kitos, jeigu jie ateina iš skirtingų tinklalapių (skirtingas domenas, protokolas arba portas).
71+
Tai vadinama "Same Origin Policy". Tam, kad tai apeiti, *abudu tinklalapiai* turi sutikti apsikeisti duomenimis ir turėti specialų JavaScript kodą, kuris tai tvarkytų. Mes apie tai kalbėsime vienojepamokų.
72+
Šis ribojimas yra, vėlgi, dėl vartotojų saugmo. Tinklapis `http://anysite.com`, kurį vartotojas atidarė, neturėtų pasiekti kitos naršklės kortelės su URL `http://gmail.com` ir vogti informaciją.
73+
- JavaScript gali lengvai komunikuoti internetu su serveriu, iš kurio atėjo tinklalapis. Bet tinklalapio galimybės gauti duomenis iš kitų tinklapių/duomenų yra kiek sudėtingesnės. Nors ir įmanoma, tai reikalauja išreikštinio susitarimo (per HTTP antraštes) iš nuotolinio serverio pusės. Vėlgi, dėl saugumo priežasčių.
7474

7575
![](limitations.svg)
7676

77-
Šių ribojimų nėra, jeigu JavaScript'as vykdomas ne naršyklėje, bet, pavyzdžiui, serveryje. Šiuolaikinės naršyklės taip pat turi plugin'us/extension'us, kurie gali prašyti vartotojų leidimo.
77+
Šių ribojimų nėra, jeigu JavaScript vykdomas ne naršyklėje, bet, pavyzdžiui, serveryje. Šiuolaikinės naršyklės taip pat turi papildinius ir plėtinius(ang. "plugins/extensions"), kurie gali prašyti vartotojų leidimo.
7878

79-
## Ko ypatingas JavaScript?
79+
## Kuo ypatinga JavaScript?
8080

81-
JavaScript turi bent jau *tris* nuostabius dalykus:
81+
JavaScript turi bent *tris* nuostabius dalykus:
8282

8383
```compare
8484
+ Pilna integracija su HTML/CSS
8585
+ Paprastus dalykus padaryti yra nesudėtinga
86-
+ Palaikoma visuose populiariausiuose naršyklėse
86+
+ Palaikoma visose populiariausiose naršyklėse
8787
```
88-
JavaScript'as yra vienintelė naršyklės technologija, kuri turi šiuos tris dalykus
88+
JavaScript yra vienintelė naršyklės technologija, kuri turi šiuos tris dalykus.
8989

90-
Štai kuo ypatingas JavaScript'as. Dėl to tai yra viena labiausiai išplitusių technologijų, kalbant apie naršyklės interfeiso kūrimą.
90+
Štai kuo ypatinga JavaScript. Tai yra viena labiausiai išplitusių technologijų, kalbant apie naršyklės sąsajos (ang. "interface") kūrimą.
9191

92-
Tačiau su JavaScript'u galima rašyti serverines, mobilias aplikacijas ir pan.
92+
Tačiau su JavaScript galima rašyti serverines, mobilias programas (ang. "applications") ir pan.
9393

9494
## Alternatyvos
9595

96-
JavaScript'o sintaksė, be abejo, tinka ne visiem ir ne visada. Skirtingi žmonės nori skirtingų pribumbasų.
96+
JavaScript sintaksė, be abejo, tinka ne visiem ir ne visada. Skirtingi žmonės nori skirtingų savybių.
9797

98-
Tas yra logiška, nes kiekvienas projektas yra skirtingas ir gali turėti labai skirtingų reikalavimų.
98+
Nieko nuostabaus, nes kiekvienas projektas yra skirtingas ir gali turėti labai skirtingų reikalavimų.
9999

100-
Dėl šių priežasčių atsirado daug kalbų, kurios yra *transpiliuojamos* (konvertuojamos) į JavaScript ir tik tada vykdomos naršyklėje.
100+
Dėl šių priežasčių atsirado daug kalbų, kurios yra konvertuojamos (dar kitaip - perrašomos, ang. "*transpiling*") į JavaScript ir tik tada vykdomos naršyklėje.
101101

102-
Modernūs įrankiai atlieką transpiliavimą labai greitai, tad programuotojai gali programuoti šiomis kalbomis nesigilindami į patį transpiliavimo procesą.
102+
Modernūs įrankiai atlieka perrašymą labai greitai, tad programuotojai gali programuoti šiomis kalbomis nesigilindami į patį konvertavimo procesą.
103103

104104
Tokių kalbų pavyzdžiai:
105105

106-
- [CoffeeScript](http://coffeescript.org/) yra "syntactic sugar" JavaScript'ui. Trumpesnė sintaksė, su kuria galima rašyti aiškesnį ir konkretesnį kodą. Tas dažniausiai patinka Ruby programuotojams.
107-
- [TypeScript](http://www.typescriptlang.org/) pagrindinis tikslas yra įvesti statinį tipizavimą. Tas palengvina sudėtingų sistemų programavimą. Sukurtas Microsft.
106+
- [CoffeeScript](http://coffeescript.org/) yra "syntactic sugar" JavaScript. Trumpesnė sintaksė, su kuria galima rašyti aiškesnį ir konkretesnį kodą. Tai dažniausiai patinka Ruby programuotojams.
107+
- [TypeScript](http://www.typescriptlang.org/) pagrindinis tikslas yra įvesti statinį tipizavimą. Tai palengvina sudėtingų sistemų programavimą. Sukurtas Microsoft.
108108
- [Flow](http://flow.org/) taip pat turi statinį tipizavimą, bet kiek kitokiu būdu. Sukurtas Facebook.
109109
- [Dart](https://www.dartlang.org/) yra atskira kalba, kuri turi savo paties variklį, kuris veikia ne naršyklėse (pvz. mobiliose aplikacijose), bet taip pat gali būti transpiliuotas į Javascriptą. Sukurtas Google.
110110

111-
Yra ir daugiaų pavyzdžių. Tačiau, netgi jeigu mes naudojame kažkurią iš transpiliuojamų kalbų, suprasti JavaScript yra ne mažiau svarbu.
111+
Yra ir daugiau pavyzdžių. Tačiau, netgi jeigu mes naudojame kažkurią iš transpiliuojamų kalbų, suprasti JavaScript yra ne mažiau svarbu.
112112

113-
## Reziumė
113+
## Santrauka
114114

115-
- JavaScript'as iš pat pradžių buvo sukurtas kaip kalba, veikianti naršyklėje, bet dabar turi ir daugiau aplinkų, kuriose gali būti vykdoma.
116-
- Šią dieną JavaScript'as yra unikalus tuo, kad tai labiausiai paplitusi kalba naršyklei, turinti pilną integraciją su HTML/CSS.
117-
- Yra daug kalbų, kurios gali būti "transipliuotos" į JavaScript ir turi papildomų funkcijų. Rekomenduojama į jas bent jau trumpai pažvelgti po to, kaip išmoksti JavaScript.
115+
- JavaScript iš pat pradžių buvo sukurtas kaip kalba, veikianti naršyklėje, bet dabar turi ir daugiau aplinkų, kuriose gali būti vykdoma.
116+
- Šią dieną JavaScript yra unikali tuo, kad tai labiausiai paplitusi kalba naršyklei, turinti pilną integraciją su HTML/CSS.
117+
- Yra daug kalbų, kurios gali būti konvertuojamos į JavaScript ir turi papildomų funkcijų. Rekomenduojame į jas bent jau trumpai pažvelgti po to, kaip išmoksite JavaScript.

0 commit comments

Comments
 (0)