Skip to content

Commit b9b23ab

Browse files
committed
merging all conflicts
2 parents fd8f819 + 30a5d5e commit b9b23ab

73 files changed

Lines changed: 391 additions & 165 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1-js/01-getting-started/1-intro/article.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,12 +103,21 @@
103103

104104
Παραδείγματα τέτοιων γλωσσών:
105105

106+
<<<<<<< HEAD
106107
- [CoffeeScript](http://coffeescript.org/) είναι "syntactic sugar" για την JavaScript. Εισάγει συντομότερη σύνταξη, επιτρέποντάς μας να γράψουμε σαφέστερο και ακριβέστερο κώδικα.
107108
Συνήθως, στούς Ruby devs αρέσει.
108109
- [TypeScript](http://www.typescriptlang.org/) επικεντρώνεται στην προσθήκη "αυστηρής πληκτρολόγησης δεδομένων" για απλοποίηση της ανάπτυξης και υποστήριξης σύνθετων συστημάτων. Αναπτύσσεται από τη Microsoft.
109110
- [Flow](http://flow.org/) προσθέτει επίσης πληκτρολόγηση δεδομένων, αλλά με διαφορετικό τρόπο. Αναπτύχθηκε από το Facebook.
110111
- [Dart](https://www.dartlang.org/) είναι μια αυτόνομη γλώσσα που έχει τη δική της μηχανή που λειτουργεί σε περιβάλλοντα εκτός προγράμματος περιήγησης (όπως εφαρμογές για κινητά), αλλά μπορεί επίσης να μεταφερθεί σε JavaScript. Αναπτύχθηκε από την Google.
111112
- [Brython](https://brython.info/) είναι ένας Python transpiler σε JavaScript που επιτρέπει την εγγραφή εφαρμογής σε πλήρη Python χωρίς JavaScript.
113+
=======
114+
- [CoffeeScript](https://coffeescript.org/) is a "syntactic sugar" for JavaScript. It introduces shorter syntax, allowing us to write clearer and more precise code. Usually, Ruby devs like it.
115+
- [TypeScript](https://www.typescriptlang.org/) is concentrated on adding "strict data typing" to simplify the development and support of complex systems. It is developed by Microsoft.
116+
- [Flow](https://flow.org/) also adds data typing, but in a different way. Developed by Facebook.
117+
- [Dart](https://www.dartlang.org/) is a standalone language that has its own engine that runs in non-browser environments (like mobile apps), but also can be transpiled to JavaScript. Developed by Google.
118+
- [Brython](https://brython.info/) is a Python transpiler to JavaScript that enables the writing of applications in pure Python without JavaScript.
119+
- [Kotlin](https://kotlinlang.org/docs/reference/js-overview.html) is a modern, concise and safe programming language that can target the browser or Node.
120+
>>>>>>> 30a5d5e2a7c3504c9afd5028f83f4a696e60aede
112121
113122
Υπάρχουν περισσότερα. Φυσικά, ακόμη και αν χρησιμοποιούμε μία από τις μεταγλωττισμένες γλώσσες, πρέπει επίσης να γνωρίζουμε τη JavaScript για να κατανοήσουμε πραγματικά τι κάνουμε.
114123

1-js/01-getting-started/2-manuals-specifications/article.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,12 @@
2727

2828
- **MSDN** – Microsoft εγχειρίδιο με πολλές πληροφορίες, όπως JavaScript (συχνά αναφέρεται ως JScript). Εάν κάποιος χρειάζεται κάτι συγκεκριμένο για τον Internet Explorer, καλύτερα να πάτε στο: <http://msdn.microsoft.com/>.
2929

30+
<<<<<<< HEAD
3031
Επίσης, μπορούμε να χρησιμοποιήσουμε μια αναζήτηση στο διαδίκτυο με φράσεις όπως "RegExp MSDN" ή "RegExp MSDN jscript".
32+
=======
33+
- <https://caniuse.com> - per-feature tables of support, e.g. to see which engines support modern cryptography functions: <http://caniuse.com/#feat=cryptography>.
34+
- <https://kangax.github.io/compat-table> - a table with language features and engines that support those or don't support.
35+
>>>>>>> 30a5d5e2a7c3504c9afd5028f83f4a696e60aede
3136
3237
## Πίνακες συμβατότητας
3338

1-js/01-getting-started/3-code-editors/article.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,13 @@
1212

1313
Εάν δεν έχετε επιλέξει ακόμα ένα IDE, τότε εξετάστε τις ακόλουθες επιλογές:
1414

15+
<<<<<<< HEAD
1516
- [Visual Studio](https://visualstudio.microsoft.com/vs/) (cross-platform, επί πληρωμής)
1617
- [WebStorm](http://www.jetbrains.com/webstorm/) (cross-platform, επί πληρωμής).
18+
=======
19+
- [Visual Studio Code](https://code.visualstudio.com/) (cross-platform, free).
20+
- [WebStorm](https://www.jetbrains.com/webstorm/) (cross-platform, paid).
21+
>>>>>>> 30a5d5e2a7c3504c9afd5028f83f4a696e60aede
1722
1823
Το "Visual Studio" δεν πρέπει να συγχέεται με το "Visual Studio Code". Το "Visual Studio" είναι ένας επί πληρωμής και ισχυρός επεξεργαστής για τα Windows και Mac, κατάλληλος για την πλατφόρμα .Net. Επίσης είναι κάνει και για JavaScript. <br> Υπάρχει επίσης μια δωρεάν έκδοση στο [Visual Studio Community](https://www.visualstudio.com/vs/community/).
1924

1-js/02-first-steps/04-variables/article.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,12 @@ let age = 25;
6363
let message = 'Hello';
6464
```
6565

66+
<<<<<<< HEAD
6667
Μερικά άτομα ορίζουν επίσης πολλές μεταβλητές με στυλ πολλαπλών γραμμών:
68+
=======
69+
Some people also define multiple variables in this multiline style:
70+
71+
>>>>>>> 30a5d5e2a7c3504c9afd5028f83f4a696e60aede
6772
```js no-beautify
6873
let user = 'John',
6974
age = 25,
@@ -104,7 +109,12 @@ let user = 'John'
104109

105110
Μπορούμε να βάλουμε οποιαδήποτε τιμή στο κουτί.
106111

112+
<<<<<<< HEAD
107113
Μπορούμε επίσης να το αλλάξουμε όσες φορές θέλουμε:
114+
=======
115+
We can also change it as many times as we want:
116+
117+
>>>>>>> 30a5d5e2a7c3504c9afd5028f83f4a696e60aede
108118
```js run
109119
let message;
110120

@@ -265,8 +275,12 @@ myBirthday = '01.01.2001'; // σφάλμα, δεν ξανα αναθέτουμε
265275
266276
Όταν ένας προγραμματιστής είναι σίγουρος ότι μια μεταβλητή δεν θα αλλάξει ποτέ, μπορούν να την δηλώσουν με την `const` για να σιγουρευτούν και να κοινοποιήσουν το γεγονός σε όλους.
267277
278+
<<<<<<< HEAD
268279
269280
### Σταθερές μεταβλητές με κεφαλαία
281+
=======
282+
### Uppercase constants
283+
>>>>>>> 30a5d5e2a7c3504c9afd5028f83f4a696e60aede
270284
271285
Υπάρχει μια ευρέως διαδεδομένη πρακτική να χρησιμοποιείτε σταθερές ως ψευδώνυμα για τιμές που είναι δύσκολα στη απομνημονευση πριν από την εκτέλεση.
272286
@@ -295,7 +309,12 @@ alert(color); // #FF7F00
295309
296310
Το να είσαι `constant` σημαίνει απλώς ότι η τιμή μιας μεταβλητής δεν αλλάζει ποτέ. Υπάρχουν όμως σταθερές που είναι γνωστές πριν από την εκτέλεση (όπως μια δεκαεξαδική τιμή για το κόκκινο) και υπάρχουν σταθερές που * υπολογίζονται * στο χρόνο εκτέλεσης, κατά τη διάρκεια της εκτέλεσης, αλλά δεν αλλάζουν μετά την αρχική τους ανάθεση.
297311
312+
<<<<<<< HEAD
298313
Για παραδείγμα:
314+
=======
315+
For instance:
316+
317+
>>>>>>> 30a5d5e2a7c3504c9afd5028f83f4a696e60aede
299318
```js
300319
const pageLoadTime = /* ο χρόνος που χρειάζεται για να φορτώση η σέλιδα */;
301320
```

1-js/02-first-steps/05-types/article.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -266,6 +266,7 @@ typeof alert // "function" (3)
266266

267267
Υπάρχουν 8 βασικοί τύποι δεδομένων στην JavaScript.
268268

269+
<<<<<<< HEAD
269270
- `number` για αριθμούς οποιουδήποτε είδους: ακέραιος ή floating-point, οι ακέραιοι αριθμοί περιορίζονται κατά ±2<sup>53</sup>.
270271
- `bigint` είναι για ακέραιους αριθμούς αυθαίρετου μήκους.
271272
- `string` για συμβολοσειρές. Μια συμβολοσειρά μπορεί να έχει έναν ή περισσότερους χαρακτήρες, δεν υπάρχει ξεχωριστός τύπος ενός χαρακτήρα.
@@ -274,6 +275,18 @@ typeof alert // "function" (3)
274275
- `undefined` για μη εκχωρημένες τιμές - έναν αυτόνομο τύπο που έχει μία μόνο τιμή `undefined`.
275276
- `object` για πιο περίπλοκες δομές δεδομένων.
276277
- `symbol` για μοναδικούς identifiers.
278+
=======
279+
- Seven primitive data types:
280+
- `number` for numbers of any kind: integer or floating-point, integers are limited by <code>±(2<sup>53</sup>-1)</code>.
281+
- `bigint` for integer numbers of arbitrary length.
282+
- `string` for strings. A string may have zero or more characters, there's no separate single-character type.
283+
- `boolean` for `true`/`false`.
284+
- `null` for unknown values -- a standalone type that has a single value `null`.
285+
- `undefined` for unassigned values -- a standalone type that has a single value `undefined`.
286+
- `symbol` for unique identifiers.
287+
- And one non-primitive data type:
288+
- `object` for more complex data structures.
289+
>>>>>>> 30a5d5e2a7c3504c9afd5028f83f4a696e60aede
277290
278291
Ο τελεστής `typeof` μας επιτρέπει να δούμε ποιος τύπος αποθηκεύεται σε μια μεταβλητή.
279292

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Η απάντηση είναι: `null`, είναι η πρώτη falsy τιμή στην λίστα.
22

33
```js run
4-
alert( 1 && null && 2 );
4+
alert(1 && null && 2);
55
```
66

1-js/02-first-steps/13-while-for/article.md

Lines changed: 43 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,24 @@
66

77
Οι *βρόχοι* είναι ένας τρόπος επανάληψης του ίδιου κώδικα πολλές φορές.
88

9+
<<<<<<< HEAD
910
## Ο βρόχος "while"
11+
=======
12+
```smart header="The for..of and for..in loops"
13+
A small announcement for advanced readers.
14+
15+
This article covers only basic loops: `while`, `do..while` and `for(..;..;..)`.
16+
17+
If you came to this article searching for other types of loops, here are the pointers:
18+
19+
- See [for..in](info:object#forin) to loop over object properties.
20+
- See [for..of](info:array#loops) and [iterables](info:iterable) for looping over arrays and iterable objects.
21+
22+
Otherwise, please read on.
23+
```
24+
25+
## The "while" loop
26+
>>>>>>> 30a5d5e2a7c3504c9afd5028f83f4a696e60aede
1027
1128
Ο βρόχος `while` έχει την ακόλουθη σύνταξη:
1229

@@ -159,11 +176,14 @@ for (i = 0; i < 3; i++) { // χρησιμοποιούμε μια υπάρχου
159176
160177
alert(i); // 3, ορατό, επειδή δηλώνεται εκτός του βρόχου
161178
```
162-
163179
````
164180

181+
<<<<<<< HEAD
165182

166183
### Παράλειψη τμήματος
184+
=======
185+
### Skipping parts
186+
>>>>>>> 30a5d5e2a7c3504c9afd5028f83f4a696e60aede
167187
168188
Μπορείτε να παραλείψετε οποιοδήποτε μέρος του `for`.
169189

@@ -285,7 +305,6 @@ if (i > 5) {
285305
286306
...και να το ξαναγράψουμε χρησιμοποιώντας ένα ερωτηματικό:
287307
288-
289308
```js no-beautify
290309
(i > 5) ? alert(i) : *!*continue*/!*; // το continue δεν επιτρέπεται εδώ
291310
```
@@ -319,9 +338,14 @@ alert('Done!');
319338

320339
The ordinary `break` after `input` would only break the inner loop. That's not sufficient -- labels, come to the rescue!
321340

341+
<<<<<<< HEAD
322342
Το συνήθης `break` μετά την `input` θα σπάσει μόνο τον εσωτερικό βρόχο. Αυτό δεν είναι αρκετή--ετικέτα, για να διασωθή!
323343

324344
Η *ετικέτα* είναι ένα αναγνωριστικό με άνω και κάτω τελεία πριν από έναν βρόχο:
345+
=======
346+
A *label* is an identifier with a colon before a loop:
347+
348+
>>>>>>> 30a5d5e2a7c3504c9afd5028f83f4a696e60aede
325349
```js
326350
labelName: for (...) {
327351
...
@@ -343,6 +367,7 @@ labelName: for (...) {
343367
// κανε κατι με την τιμή...
344368
}
345369
}
370+
346371
alert('Done!');
347372
```
348373

@@ -361,12 +386,28 @@ for (let i = 0; i < 3; i++) { ... }
361386
````warn header="Labels do not allow to \"jump\" anywhere"
362387
Οι ετικέτες δεν μας επιτρέπουν να μεταβούμε σε αυθαίρετο μέρος στον κώδικα.
363388
389+
<<<<<<< HEAD
364390
Για παράδειγμα, αυτό είναι αδύνατο να γίνει:
391+
=======
392+
For example, it is impossible to do this:
393+
394+
>>>>>>> 30a5d5e2a7c3504c9afd5028f83f4a696e60aede
365395
```js
366396
367397
break label; // δεν μεταβαίνει στην παρακάτω ετικέτα
368398
399+
<<<<<<< HEAD
369400
label: for (...)
401+
=======
402+
A `break` directive must be inside a code block. Technically, any labelled code block will do, e.g.:
403+
404+
```js
405+
label: {
406+
// ...
407+
break label; // works
408+
// ...
409+
}
410+
>>>>>>> 30a5d5e2a7c3504c9afd5028f83f4a696e60aede
370411
```
371412
Μια κλήση για `break/continue` είναι δυνατή μόνο μέσα από ένα βρόχο και η ετικέτα πρέπει να βρίσκεται κάπου πάνω από την οδηγία.
372413

1-js/03-code-quality/01-debugging-chrome/chrome-open-sources.svg

Lines changed: 1 addition & 1 deletion
Loading

1-js/03-code-quality/01-debugging-chrome/chrome-sources-breakpoint.svg

Lines changed: 1 addition & 1 deletion
Loading

1-js/03-code-quality/01-debugging-chrome/chrome-sources-console.svg

Lines changed: 1 addition & 1 deletion
Loading

0 commit comments

Comments
 (0)