JavaScript термінів 10, які ви повинні знати
Від каррінг до закриття існує досить багато жаргонів JavaScript (спеціальні слова, що використовуються в полі), які знають, що не тільки допоможуть вам збільшити ваш словник, але й краще розуміють JavaScript. Жаргони зазвичай знаходяться в документації та технічних статтях. Але деякі з них люблять закриття досить стандартні речі, про які потрібно знати. Знання того, що означає саме слово, може допомогти вам пізнати концепцію, яку вона назвала на краще.
Ця посада є компіляцією з 10 таких термінів їх значення і контекст, в якому вони використовуються у JavaScript. Якщо ви новачок, то цей список має вас охоплювати основи, як підйом. У той же час в них включені також менш відомі або менш зрозумілі терміни.
- Arity
- Анонімний
- Закриття
- Каррінг
- Підйом
- Мутація
- Pragma
- Страж
- Ваніль
- Variadic
1. Суб'єктність
Arity (від латинського) - це термін, що використовується для позначення кількості аргументів або операндів у функції або операції відповідно. Ви, швидше за все, зустрінете це слово в області JavaScript, коли він використовується для згадування кількість аргументів, очікуваних функцією JavaScript.
Є навіть властивість називається arity, of Функція
об'єкт, який повертає кількість очікуваних аргументів у функції. Вона тепер застаріла і замінена довжини
.
Наступна функція має arity 3.
function getName (перший, середній, останній) return first + "+ middle +" + last;
2. Анонімний
Анонімний є прикметником. Коли щось або хтось називають анонімним, це означає, що ім'я речі або особи невідоме. Аналогічно в JavaScript анонімна функція є тією, яка не ідентифікована назвою.
(function () // body) ();
Вище - це IIFE (Виразу виклику функції відразу). Функція в ній анонімна, оскільки не має імені. Тепер подивіться на нижче.
var foo = function () ;
Це також вважається анонімною функцією, оскільки після ключового слова немає імені функції
.
Трохи сумнівів піднімається в правильності використання слова “анонімний”. За допомогою IIFE функція називається відразу, не вказується ім'я, тоді як для виклику останньої функції синтаксис foo ()
використовується.
Це начебто ми називали безіменну функцію з назвою 'foo' і називали її, використовуючи це. Чи вважається це анонімним? Не знаю, залишу це англійським фахівцям. Але, незважаючи на мою плутанину, обидва вони дійсно називаються анонімною функцією.
3. Закриття
Ось одне з визначень з оксфордського словника для закриття: “Річ, яка щось закриває або запечатує, наприклад, шапку або краватку.”
У JavaScript закриття - це внутрішня функція, яка доступна за межами області його зовнішньої функції, при цьому її з'єднання з зовнішніми функціями функції залишаються незмінними.
Щоб пояснити речі (можливо, не точно, але досить просто), подумайте закриття як офіціант у ресторані. Багато речей відбувається в кухні ресторану, де нам не дозволяється входити або бачити. Але як ми мусимо отримати наше продовольство тоді?
Тут заходять офіціанти. Ми їх називаємо, замовляємо їжу, а потім їдуть на кухню, повідомляють шеф-кухарів про замовлення, і приносять її нам, коли замовлення буде готове. Таким чином ми не порушили жодного “правила” і все ще вдається схопити їжу.
Офіціант - це той, хто здатний взяти наше замовлення на кухню і повернутися з їжею. JavaScript закриття подібні до того, що вони здатні візьмемо наші параметри і поверніть нам змінні (посилання на ці змінні, точніше) всередині функції, до якої ми не дозволені.
order order () var food; функція офіціанта (замовлення) chef (order); повернення їжі; функція шеф-кухар (порядок) if (замовлення === 'pasta') їжа = ['паста', 'соус', 'приправа']; cook (); функція cook () food.push ('cooked'); повернути офіціанта; var myOrder = order (); console.log (myOrder ('паста')); // Array ["паста", "соус", "приправа", "приготована")
Як видно з наведеного вище коду, все окрім офіціант
і його повернене значення всередині функції замовлення не піддається зовнішньому світу.
4. Каррінг
Ефект, названий на ім'я Haskell Curry, відноситься до використання декількох функцій з єдиними аргументами, замість однієї функції з кількома аргументами. Давайте подивимося add
функції нижче, наприклад.
функція addx (x) функція addy (y) return x + y; return addy функція add (x, y) return (x + y); console.log (addx (3) (4)); 7 console.log (add (3,4)); 7
Обидві функції повертають один і той же результат. Функція addx
приймає параметр x
під час повернення адди
який у свою чергу приймає y
значення, виконує додавання з x
і повертає суму.
Функція add
просто бере обох x
і y
одночасно виконує додавання і повертає суму. Поки перша функція може здатися не дуже корисною, поки…
var add4 = addx (4); console.log (add4 (8)); // 12 console.log (add4 (6)); // 10 console.log (add4 (-74)); // - 70
Тепер, колишня функція раптом стає цікавою. У currying, ви завжди можете виправити крок у послідовності операцій, як додавання 4 з вищевказаного коду, що є корисним, коли одна з змінних, що використовуються в операції, завжди однакова.
5. Підйом
Підйомник означає щось підняти. Підйом у JavaScript також означає те ж саме, і що виникає, це декларація (оголошення змінних і функцій).
Декларації, де змінні та функції створюються за допомогою ключових слів var
(не для глобальних) і функції
.
Не має значення, де ви вводите код для оголошення функції або змінної, під час оцінювання всі декларації переміщуються в області, де вони знаходяться (за винятком строгого режиму). Отже, можна написати робочий код з кодом для виклику функції, розміщеним перед оголошенням функції.
var name = 'Velma'; console.log (sayCatchPhrase (назва)); // "Джинкі!" Функція sayCatchPhrase (name) phrase = 'Фред Флінстоун': 'Yabba dabba doo!', 'Velma': 'Jinkies!', 'Razor': 'Бінго!', 'He-Man': 'У мене сила '; зворотні фрази [назва];
6. Мутація
Мутація означає зміну або модифікацію. Якщо ви коли-небудь зустрічали слово мутація в JavaScript, це, ймовірно, стосується змін, які пройшли через елементи DOM.
Існує навіть API, який називається MutationObserver, щоб стежити за мутаціями DOM додавання дочірніх елементів або зміни атрибутів елемента. (Ви можете дізнатися більше про MutationObserver в моєму пості.)
7. Прагма
Pragma є коротким для прагматичної інформації. На простому англійському, прагматичний - це прикметник, що означає розумний і практичний. У програмуванні, прагма відноситься до коду, який складається з корисної інформації як компілятор або інтерпретатор або асемблер повинен обробляти програму.
Він нічого не робить для самої мови програмування, а його синтаксис може змінюватися. Вони впливають лише на поведінку компілятора. JavaScript також має декілька прагм, один з яких строгий
.
"використовувати строгий";
За допомогою вищезазначеної прагми код JavaScript буде виконано в суворому режимі. У суворому режимі поганий синтаксис не допускається, підйом це не зроблено, тихі помилки показано і т.д. Це допомагає в написання більш безпечного та оптимізованого коду JavaScript.
8. Страж
Страж це солдати, які стоять на сторожі (Пам'ятайте ті, що з X-Men?). У програмуванні, дозорні є значеннями, які використовуються для позначення кінця циклу або процесу. Їх також можна назвати “прапори”.
Ви можете використовувати будь-яку розумну вартість як дозорний. Ось приклад дозорні використовується в JavaScript; indexOf
метод, який повертає -1 (вартове значення), коли значення пошуку не знайдено в цільовому рядку. Нижче наведено функцію, яка повертає позицію масиву і якщо значення не знайдено, повертає -1.
функція getPos (ary, val) var i = 0, len = ary.length; для (; i9. Ваніль
Я думаю, що кожен перший смак морозива повинен був бути ванільним. Я також думаю, що не тільки в морозиво, але в значній мірі кожен солодкий блюдо ваніль роду стало стандартний аромат. Я бачив чимало рецептів тортів, де вони додають принаймні одну краплю його в суміш - просто щоб збільшити смак.
І ось що ваніль є традиційний стандартний аромат. Ваніль JavaScript відноситься до стандартного JavaScript - без рамки. Насправді Vanilla використовується не тільки для опису стандартної версії JavaScript, але й для інших мов, таких як CSS.
10. Варіадик
Variadic є прикметник, створений шляхом приєднання “змінної” і “корисність”. “Adicity” є від давньогрецького, зі значенням, що є таким же, як латинське слово “arity” (Пункт 1 у цьому списку). Таким чином, термін variadic використовується висловити те, що має змінну кількість аргументів.
У JavaScript, a variadic Функція приймає будь-яку кількість аргументів. Його можна створити за допомогою
аргументів
власності,застосовувати
Метод і з моменту ES6, розповсюдження оператора. Нижче наведено приклад використання оператора розповсюдження.функція test (… a) console.log (a); test ('a', 'b', 'c', 8, [56, -89]); // виводиться масив ["a", "b", "c", 8, масив [2]]