Когда мы входим в следующий модуль академии Flatiron, мы начинаем изучать новый язык, JavaScript. JavaScript — это язык программирования, использующий спецификацию ECMAScript и являющийся объектно-ориентированным. Объектно-ориентированный означает, что он основан на концепции объектов, содержащих данные и код. JavaScript — это реализация ECMAScript или Европейской ассоциации производителей компьютеров. Эти определения звучат красиво, но мало что значат для тех, кто плохо знаком с программированием или даже с этим языком. Важно понимать некоторые фантастические методы JavaScript, математические возможности и синтаксис JavaScript.

Общие методы JavaScript

К счастью для нас, JavaScript имеет много общих методов с Ruby. Некоторые из них включают .map(), .include? /.includes() и .reduce(). Однако в JavaScript или JS есть много методов, которые могут делать похожие вещи, но с разными именами. Чтобы назвать очень важный, для… итератора. Он перебирает массив и позволяет вам работать с каждым элементом. Думайте об этом как о замене цикла for. Например, если бы у меня был список цветов в массиве, и я хотел бы изменить их все на более светлые цвета, я мог бы использовать цикл for…of следующим образом:

Это берет постоянный массив «colors» и добавляет перед ним строку «light». Этот код будет иметь вывод, который выглядит следующим образом:

Важно отметить, что цикл for…of делает то же самое, что и метод .forEach в JavaScript, и встречается немного чаще. Вы можете связать метод .forEach с использованием метода .each в Ruby; он выполняет функцию или что-то делает с данными для каждого элемента массива. Если бы мы написали тот же код, используя метод .forEach, это выглядело бы так:

Вы можете себе представить, как эти методы пригодились бы в повседневном программировании. Представьте, что вы пытаетесь написать программу, которая добавляет префикс имени человека, мистер, миссис и т. д. Вы можете заменить жестко закодированную строку переменной, которая зависит от пользовательского ввода. Затем, с этого момента в коде, когда на пользователя ссылаются, он будет запоминаться как г-н или г-жа Пользователь.

Еще один важный момент, о котором следует знать, прежде чем войти в мир JavaScript, — это метод Object.hasOwnProperty(). Этот метод возвращает логическое значение на основе того, что вы передаете в качестве аргумента. Если у объекта есть свойство, равное вашему аргументу, вы получите true, в противном случае вы получите false. Вспомните все случаи, когда мы заходили в нашу консоль Ruby и должны были копаться в нашем коде, чтобы определить, какие объекты имеют какие свойства. В JavaScript .hasOwnProperty() для любого объекта и узнать, существует ли он или нет.

Математика в JavaScript

Возможно, одним из наиболее забавных аспектов JavaScript являются его огромные математические возможности! По моему скромному мнению, Math.round(), Math.pow(a, b), Math.sqrt(), Math.ceil() и Math.floor() невероятно полезны. Эти методы делают примерно то, что вы от них ожидаете: округляют до ближайшего целого числа, pow можно использовать как показатель степени или степени, ceil и floor округляют числа в большую или меньшую сторону, а sort находит квадратный корень числа. И их выходы, соответственно:

Это лишь некоторые из многих замечательных встроенных математических функций в JavaScript, которые можно использовать для чего угодно: от генерации случайных экземпляров объектов для заполнения базы данных, установки случайных цветов для изображения и, в конечном итоге, манипулирования объектами на экране для таких вещей, как анимация. и игры. Понимание того, как их использовать и практика с ними, может дать вам преимущество в программировании на JavaScript.

Синтаксис

Хотя это не самая интересная тема, важно изучить JavaScript, зная несколько ключевых элементов синтаксиса. Поскольку мы изучаем Ruby, язык, который довольно гибкий с его входными данными, мы должны быть готовы к тому, чтобы быть немного более неявными в JS. Во-первых, использование фигурных скобок {} почти всегда необходимо при определении тела функции в JavaScript. Например, давайте посмотрим на код ниже:

Вышеприведенный код выглядит так, как будто он должен работать, и что-то подобное в Ruby наверняка сработает. Однако в JavaScript этот код выдаст вам такую ​​ошибку:

Мы можем исправить эту ошибку, просто заключив тело функции в фигурные скобки следующим образом:

И теперь функция выполнит правильную математику и вернет 3.

Чтобы просмотреть этот код, в первых двух строках мы используем ключевое слово let для определения двух переменных, a и b. В Ruby нам не нужны ключевые слова для определения переменных, но в JavaScript их несколько, самое распространенное из них — let. Далее мы по-другому объявляем наши функции в JavaScript. Мы пишем слово function перед именем нашей функции вместо def. За ним всегда должны следовать круглые скобки, независимо от того, принимает он какие-либо аргументы или нет.

Журнал консоли

Еще одно ключевое отличие, которое вы, возможно, заметили, — это новая строка кода console.log(). Журнал консоли — это версия метода Ruby p или puts для JavaScript. Он печатает или «логирует» данные на консоль. Журнал консоли может принимать в качестве аргументов строку, переменные, целые числа или другие типы данных. Он может даже принимать функцию в качестве аргумента! Это можно использовать для проверки вашего кода и просмотра того, какие переменные или функции соответствуют чему, чтобы не потеряться в сложных программах.

Подводя итог

Это лишь часть того, что мы можем узнать о JavaScript. Мы даже не коснулись объектных моделей документов или любых других возможностей JavaScript. При этом, если помнить об этих методах, математических функциях и различиях в синтаксисе, процесс изучения JavaScript может стать немного более плавным. Я надеюсь, что это побудит всех, кто прочитает ее, с головой погрузиться в JavaScript и извлечь из него как можно больше пользы!