diff --git a/1-js/03-code-quality/06-polyfills/article.md b/1-js/03-code-quality/06-polyfills/article.md
index 19404b7b5..491b13519 100644
--- a/1-js/03-code-quality/06-polyfills/article.md
+++ b/1-js/03-code-quality/06-polyfills/article.md
@@ -1,91 +1,90 @@
-# Polyfills and transpilers
+# Polyfilly a transpilátory
-The JavaScript language steadily evolves. New proposals to the language appear regularly, they are analyzed and, if considered worthy, are appended to the list at and then progress to the [specification](https://www.ecma-international.org/publications-and-standards/standards/ecma-262/).
+Jazyk JavaScript se neustále vyvÃjÃ. PravidelnÄ se pro tento jazyk objevujà nové návrhy, ty jsou analyzovány a jsou-li shledány užiteÄnými, pÅidajà se na seznam na a pak pokraÄujà do [specifikace](https://www.ecma-international.org/publications-and-standards/standards/ecma-262/).
-Teams behind JavaScript engines have their own ideas about what to implement first. They may decide to implement proposals that are in draft and postpone things that are already in the spec, because they are less interesting or just harder to do.
+Týmy vyvÃjejÃcà JavaScriptové motory majà své vlastnà nápady ohlednÄ toho, co implementovat jako prvnÃ. Mohou se rozhodnout implementovat návrhy, které jsou teprve naÄrtnuty, a odložit vÄci, které jsou už ve specifikaci, protože jsou ménÄ zajÃmavé nebo prostÄ jen tÄžšà na implementaci.
-So it's quite common for an engine to implement only part of the standard.
+Je tedy pomÄrnÄ bÄžné, že motor implementuje pouze Äást standardu.
-A good page to see the current state of support for language features is (it's big, we have a lot to study yet).
+Dobrá stránka, na které uvidÃte aktuálnà stav podpory vlastnostà jazyka, je (je to velká tabulka, máme jeÅ¡tÄ hodnÄ co studovat).
-As programmers, we'd like to use most recent features. The more good stuff - the better!
+Jako programátoÅi rádi použÃváme nejnovÄjšà vlastnosti. ÄÃm vÃce dobrých vÄcÃ, tÃm lépe!
-On the other hand, how to make our modern code work on older engines that don't understand recent features yet?
+Na druhou stranu, jak pÅimÄt náš modernà kód, aby fungoval na starÅ¡Ãch motorech, které jeÅ¡tÄ nerozumÄjà vlastnostem pÅidaným teprve nedávno?
-There are two tools for that:
+Jsou dva druhy nástrojů, které to zajistÃ:
-1. Transpilers.
-2. Polyfills.
+1. Transpilátory.
+2. Polyfilly.
-Here, in this chapter, our purpose is to get the gist of how they work, and their place in web development.
+V této kapitole je naÅ¡Ãm cÃlem zÃskat náhled na to, jak fungujà a jaké je jejich mÃsto pÅi vývoji webů.
-## Transpilers
+## Transpilátory
-A [transpiler](https://en.wikipedia.org/wiki/Source-to-source_compiler) is a special piece of software that translates source code to another source code. It can parse ("read and understand") modern code and rewrite it using older syntax constructs, so that it'll also work in outdated engines.
+[Transpilátor](https://cs.wikipedia.org/wiki/Transpiler) neboli transpiler je zvláštnà druh softwaru, který pÅekládá zdrojový kód do jiného zdrojového kódu. Umà parsovat (âpÅeÄÃst a pochopitâ) modernà kód a pÅepsat jej pomocà starÅ¡Ãch syntaktických konstrukcà tak, aby kód fungoval i na zastaralých motorech.
-E.g. JavaScript before year 2020 didn't have the "nullish coalescing operator" `??`. So, if a visitor uses an outdated browser, it may fail to understand the code like `height = height ?? 100`.
+NapÅÃklad JavaScript pÅed rokem 2020 nemÄl âoperátor koalescenceâ `??`. Jestliže tedy návÅ¡tÄvnÃk použÃvá zastaralý prohlÞeÄ, nemusà porozumÄt kódu `výška = výška ?? 100`.
-A transpiler would analyze our code and rewrite `height ?? 100` into `(height !== undefined && height !== null) ? height : 100`.
+Transpilátor analyzuje náš kód a pÅepÃÅ¡e `výška ?? 100` na `(výška !== undefined && výška !== null) ? výška : 100`.
```js
-// before running the transpiler
-height = height ?? 100;
+// pÅed spuÅ¡tÄnÃm transpilátoru
+výška = výška ?? 100;
-// after running the transpiler
-height = (height !== undefined && height !== null) ? height : 100;
+// po spuÅ¡tÄnà transpilátoru
+výška = (výška !== undefined && výška !== null) ? výška : 100;
```
-Now the rewritten code is suitable for older JavaScript engines.
+Nynà je pÅepsaný kód vhodný i pro staršà JavaScriptové motory.
-Usually, a developer runs the transpiler on their own computer, and then deploys the transpiled code to the server.
+VývojáŠsi obvykle spustà transpilátor na svém vlastnÃm poÄÃtaÄi a pak zveÅejnà transpilovaný kód na serveru.
-Speaking of names, [Babel](https://babeljs.io) is one of the most prominent transpilers out there.
+Když hovoÅÃme o názvech, jednÃm z nejvýznamnÄjÅ¡Ãch transpilátorů je [Babel](https://babeljs.io).
-Modern project build systems, such as [webpack](https://webpack.js.org/), provide a means to run a transpiler automatically on every code change, so it's very easy to integrate into the development process.
+Modernà systémy pro vytváÅenà projektů, napÅÃklad [webpack](https://webpack.js.org/), poskytujà způsoby, jak spouÅ¡tÄt transpilátor automaticky pÅi každé zmÄnÄ kódu, takže je velmi jednoduché jej integrovat do procesu vývoje.
-## Polyfills
+## Polyfilly
-New language features may include not only syntax constructs and operators, but also built-in functions.
+Mezi nové vlastnosti jazyka mohou patÅit nejenom syntaktické konstrukce a operátory, ale také vestavÄné funkce.
-For example, `Math.trunc(n)` is a function that "cuts off" the decimal part of a number, e.g `Math.trunc(1.23)` returns `1`.
+NapÅÃklad `Math.trunc(n)` je funkce, která âodÅÃzneâ desetinnou Äást ÄÃsla, napÅ. `Math.trunc(1.23)` vrátà `1`.
-In some (very outdated) JavaScript engines, there's no `Math.trunc`, so such code will fail.
+V nÄkterých (velmi zastaralých) JavaScriptových motorech nenà funkce `Math.trunc`, takže takový kód selže.
-As we're talking about new functions, not syntax changes, there's no need to transpile anything here. We just need to declare the missing function.
+Protože hovoÅÃme o nových funkcÃch a ne o syntaktických zmÄnách, nenà tady potÅeba nic transpilovat. PotÅebujeme jenom deklarovat chybÄjÃcà funkci.
-A script that updates/adds new functions is called "polyfill". It "fills in" the gap and adds missing implementations.
+Skript, který vylepÅ¡uje nebo pÅidává nové funkce, se nazývá âpolyfillâ. âVyplnÃâ (anglicky âfill inâ) mezeru a pÅidá chybÄjÃcà implementace.
-For this particular case, the polyfill for `Math.trunc` is a script that implements it, like this:
+V tomto konkrétnÃm pÅÃpadÄ je polyfill pro `Math.trunc` skript, který ji implementuje, napÅÃklad takto:
```js
-if (!Math.trunc) { // if no such function
- // implement it
- Math.trunc = function(number) {
- // Math.ceil and Math.floor exist even in ancient JavaScript engines
- // they are covered later in the tutorial
- return number < 0 ? Math.ceil(number) : Math.floor(number);
+if (!Math.trunc) { // nenÃ-li taková funkce
+ // implementuje ji
+ Math.trunc = function(ÄÃslo) {
+ // Math.ceil a Math.floor existujà i v nejstarÅ¡Ãch JavaScriptových motorech
+ // budou vysvÄtleny pozdÄji v tomto tutoriálu
+ return ÄÃslo < 0 ? Math.ceil(ÄÃslo) : Math.floor(ÄÃslo);
};
}
```
-JavaScript is a highly dynamic language. Scripts may add/modify any function, even built-in ones.
+JavaScript je vysoce dynamický jazyk. Skripty mohou pÅidávat nebo modifikovat libovolné funkce, dokonce i vestavÄné.
-Two interesting polyfill libraries are:
-- [core js](https://github.com/zloirock/core-js) that supports a lot, allows to include only needed features.
+DvÄ zajÃmavé knihovny polyfillů jsou:
+- [core js](https://github.com/zloirock/core-js), která toho podporuje mnoho a umožÅuje pÅidávat jen potÅebné vlastnosti.
+## ShrnutÃ
-## Summary
+V této kapitole jsme vás chtÄli motivovat k prostudovánà modernÃch vlastnostà jazyka, vÄetnÄ tÄch âza hranouâ, i když jeÅ¡tÄ nejsou pÅÃliÅ¡ podporovány v motorech JavaScriptu.
-In this chapter we'd like to motivate you to study modern and even "bleeding-edge" language features, even if they aren't yet well-supported by JavaScript engines.
+Jen nezapomÃnejte použÃvat transpilátor (použÃváte-li modernà syntaxi nebo operátory) a polyfilly (abyste pÅidali funkce, které mohou chybÄt). Ty zajistÃ, že váš kód bude fungovat.
-Just don't forget to use a transpiler (if using modern syntax or operators) and polyfills (to add functions that may be missing). They'll ensure that the code works.
+NapÅÃklad pozdÄji, až budete JavaScript dobÅe znát, si můžete nastavit systém pro vytváÅenà kódu založený na [webpacku](https://webpack.js.org/) s pluginem [babel-loader](https://github.com/babel/babel-loader).
-For example, later when you're familiar with JavaScript, you can setup a code build system based on [webpack](https://webpack.js.org/) with the [babel-loader](https://github.com/babel/babel-loader) plugin.
+Dobré zdroje, které ukazujà aktuálnà stav podpory různých vlastnostÃ:
+- - pro Äistý JavaScript.
+- - pro funkce vztahujÃcà se k prohlÞeÄi.
-Good resources that show the current state of support for various features:
-- - for pure JavaScript.
-- - for browser-related functions.
-
-P.S. Google Chrome is usually the most up-to-date with language features, try it if a tutorial demo fails. Most tutorial demos work with any modern browser though.
+P.S. Pokud se týká vlastnostà jazyka, obvykle je nejaktuálnÄjšà Google Chrome. Pokud vám nÄkteré demo v tomto tutoriálu selže, zkuste ho. VÄtÅ¡ina dem v tutoriálu vÅ¡ak funguje na kterémkoli modernÃm prohlÞeÄi.