Статьи

Руководство для начинающих по JavaScript переменным и типам данных

Руководство для начинающих по JavaScript Переменные и типы данных были рецензированы Скоттом Молинари и Вилданом Софтиком и Крисом Перри . Спасибо всем рецензентам SitePoint за то, что сделали контент SitePoint как можно лучше!

Набор домино с символами, представляющими переменные и типы данных JavaScript

Итак, вы решили изучить JavaScript, язык программирования в Интернете. Если вам кажется, что впереди непростое путешествие, и вы не знаете, с чего начать, вот маленький секрет: не нужно никаких специальных навыков, чтобы научиться программировать, и все начинают с нуля. Делайте это по одному шагу за раз, и вы попадете туда.

Это руководство для меня?

Если что-то из этого применимо к вам, вам будет полезно прочитать это руководство:

  • Вы никогда не использовали язык программирования раньше.
  • Вы никогда не использовали JavaScript раньше.
  • Вы пробовали изучать JavaScript раньше, но обнаружили, что у вас недостаточно ресурсов или нет доступа к ним.
  • Вы немного знаете JavaScript, но хотите освежить в памяти основы.

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

Отказ от ответственности: Это руководство предназначено для начинающих JavaScript и программирования. Таким образом, многие концепции будут представлены в упрощенном виде, и будет использоваться строгий синтаксис ES5.

Готов? Давайте начнем!

Что такое JavaScript?

JavaScript — это язык программирования, который делает сайты динамичными и интерактивными. Это клиентский язык программирования, что означает, что код выполняется в веб-браузере пользователя. С появлением Node.js и других технологий его также можно использовать в качестве серверного языка, что делает его чрезвычайно универсальным. JavaScript используется в основном для интерфейсной веб-разработки и тесно работает с HTML и CSS.

Примечание. Java — это не JavaScript. Это другой язык со схожим до смешного названием.

Требования

У вас уже есть предпосылки для написания и использования JavaScript. Все, что вам нужно, это веб-браузер для просмотра кода и текстовый редактор для его написания. Браузер, которым вы сейчас пользуетесь, идеален (Chrome, Firefox, Safari, Edge и т. Д.). Ваш компьютер предустановлен с Notepad (Windows) или TextEdit (Mac), но я бы порекомендовал установить Atom или Brackets , которые являются бесплатными программами, специально разработанными для кодирования.

CodePen — это веб-сайт, который позволяет вам писать код и делать живые демонстрации, и это будет самый простой способ начать следовать и практиковаться.

Основная терминология

Программист пишет программы так же, как автор пишет книгу.

Программа — это просто набор инструкций, которые компьютер может прочитать и использовать для выполнения задачи. Каждая отдельная инструкция представляет собой строку кода, известную как утверждение , которое похоже на предложение в книге. В то время как предложение на английском языке заканчивается точкой, оператор JavaScript обычно заканчивается точкой с запятой. Синтаксис относится к символам и правилам, которые определяют структуру языка, аналогично грамматике и пунктуации, а точка с запятой, заканчивающаяся оператором JavaScript, является частью синтаксиса.

Комментарии

Комментарий — это читаемая заметка, написанная в коде.

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

В JavaScript есть два типа комментариев:

  • Однострочный комментарий , написанный двумя косыми чертами //
 // This is a single line comment.
  • Многострочный комментарий , который находится между /**/
 /* This is a comment.
It's a multi-line comment.
Also a haiku. */

переменные

Переменная — это контейнер, в котором хранятся значения данных.

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

Изначально x

 x = 5

Теперь x5 Вы можете думать о x5

В JavaScript переменные работают одинаково, за исключением того, что они могут содержать не только числа в качестве значения — они могут содержать всевозможные значения данных, которые мы узнаем к концу этой статьи.

Переменные создаются и объявляются с использованием ключевого слова var Мы можем использовать наш пример алгебры выше, чтобы создать оператор JavaScript.

 var x = 5; // the variable x contains the numeric value of 5.

Основываясь на том, что мы узнали, вы можете видеть, что у нас есть оператор JavaScript, который объявляет переменную ( x5=// Утверждение заканчивается точкой с запятой ( ;

Переменные необходимо объявлять с помощью var

 var x = 5; // x was worth 5
x = 6; // now it's worth 6

Переменная может содержать только одно значение за раз, и, поскольку программа выполняется сверху вниз, значение x6

Вот пример переменной с другим типом данных.

 var greeting = "Oh hi, Mark!";

Теперь переменная greetingOh hi, Mark! ,

Несколько важных вещей, которые нужно знать о переменных:

  • Имя переменной может иметь буквы, цифры, знак доллара ( $_
  • Переменная не может быть любым словом в списке зарезервированных ключевых слов .
  • Переменные чувствительны к регистру.
  • Соглашение об именах — camelCase , в котором переменная всегда начинается со строчной буквы, но каждое последующее слово начинается с заглавной буквы.

Совет: хотя переменная может иметь любое имя, важно выбрать имена, которые являются описательными, но краткими.

Типы данных

Теперь, когда мы знаем о переменных, мы можем узнать о типах данных, которые может содержать переменная.

Тип данных — это классификация данных. Языки программирования должны иметь разные типы данных для правильного взаимодействия со значениями. Вы можете делать математику с числом, но не с предложением, поэтому компьютер классифицирует их по-разному. Существует шесть примитивных (базовых) типов данных: строки, числа, логические, нулевые, неопределенные и символьные (новые в ES6). Примитивы могут содержать только одно значение. Все, что не является одним из этих примитивов, является Объектом . Объекты могут содержать несколько значений.

JavaScript известен как слабо типизированный язык (или слабо типизированный ), что означает, что язык автоматически определяет тип данных на основе используемого вами синтаксиса.

тестирование

alert()console.log()

 var x = 5;

alert(x);
console.log(x);

Вот демонстрация этих методов. alertconsole.logInspect . Я не буду ссылаться на них снова в этой статье, поэтому вы можете выбрать тот, который лучше всего подходит для практики. Я бы рекомендовал избегать alert

Вы всегда можете узнать тип переменной, используя typeof

 var answer = 42;

typeof answer // returns number

Струны

Строка — это серия символов.

Любые данные, содержащие текст, будут представлены строкой. Название строки, вероятно, произошло от ранних программистов, которым напомнили о бусах на веревочке.

  • Строка может быть заключена в двойные кавычки ( " "

     "Pull the string, and it will follow wherever you wish."; // double   quoted string
    
  • или одинарные кавычки ( ' '

     'Push it, and it will go nowhere at all.'; // single quoted string
    

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

Оба конца строки должны совпадать, но в противном случае между ними нет разницы — это просто разные способы написания строки.

Но что, если я хочу написать, что я в строке в одинарных кавычках, или кто-то в строке в двойных кавычках? Разве это не сломает нить?

Будет, и есть два варианта борьбы с этим. Вы можете смело использовать цитаты противоположного типа:

 "Damn it, man, I'm a doctor, not a torpedo technician!"; // using single quotes within a double quoted string
'"Do. Or do not. There is no try." - Yoda'; // using double quotes in a single quoted string

На протяжении всего проекта важно выбрать один стиль для последовательности для согласованности. Вы можете использовать обратную косую черту ( \экранирования строки.

 'Damn it, man, I\'m a doctor, not a torpedo technician!'; 
"\"Do. Or do not. There is no try.\" - Yoda";

Мы можем применять строки к переменным. Давайте использовать мой пример greeting

 var greeting = "Oh hi, Mark!";

Строки также могут быть связаны вместе в процессе, известном как конкатенация . Переменные и строки могут быть объединены с помощью символа плюс ( +

 var greeting = "Oh hi, " + "Mark" + "!"; // returns Oh hi, Mark!

Обратите внимание, что пустое пространство также является символом в строке. В приведенном ниже примере мы увидим, как конкатенация может быть полезна.

 var message = "Oh hi, ";
var firstName = "Mark";
var bam = "!";

var greeting = message + firstName + bam; // returns Oh hi, Mark!

Теперь все строки представлены переменными, которые могут меняться. Если вы когда-либо заходили в приложение (например, в свою электронную почту) и встречали ваше имя, вы можете увидеть, как ваше имя — просто строка в переменной в их системе.

чисел

Число — это числовое значение.

Числа не имеют никакого специального синтаксиса, связанного с ними, как строки. Если вы поместите число в кавычки ( "5" Число может быть целым или десятичным (известно как число с плавающей запятой) и может иметь положительное или отрицательное значение.

 var x = 5; // whole integer
var y = 1.2; // float
var z = -76; // negative whole integer

Номер может содержать до 15 цифр.

 var largeNumber = 999999999999999; // a valid number

Вы можете сделать обычную математику с числами — сложение ( +-/+

 var sum = 2 + 5; // returns 7
var difference = 6 - 4; // returns 2

Вы можете сделать математику с переменными.

 var elves = 3;
var dwarves = 7;
var men = 9;
var sauron = 1;

var ringsOfPower = elves + dwarves + men + sauron; // returns 20

Есть два других специальных типа номера.

NaN

NaN NaN

 var nope = 1 / "One"; // returns NaN

Например, попытка разделить число на строку приводит к NaN

бесконечность

Infinity0

 var beyond = 1 / 0; // returns Infinity

логический

Логическое значение — это значение, которое является либо истинным, либо ложным.

Логические значения очень часто используются в программировании, когда значение может переключаться между да и нет, включением и выключением или истиной и ложью. Логические значения могут представлять текущее состояние чего-то, что может измениться.

Например, мы использовали бы логическое значение, чтобы указать, установлен ли флажок или нет.

 var isChecked = true;

Часто булевы значения используются, чтобы проверить, равны ли две вещи, или результат математического уравнения является истинным или ложным.

 /* Check if 7 is greater than 8 */
7 > 8; // returns false

/* Check if a variable is equal to a string */
var color = "Blue";

color === "Blue"; // returns true

Примечание. Один знак равенства ( = Двойной ( =====

Неопределенный

Неопределенная переменная не имеет значения.

С помощью ключевого слова varобъявляем переменную, но пока ей не присвоено значение, она не определена.

 var thing; // returns undefined

Если вы не объявляете переменную с помощью var

 typeof anotherThing; // returns undefined

Значение NULL

Нуль — это значение, которое ничего не представляет.

Ноль — это намеренное отсутствие какой-либо ценности. Он представляет собой нечто, чего не существует, и не является ни одним из других типов данных.

 var empty = null;

Разница между нулевым и неопределенным довольно тонкая, но главное отличие в том, что нулевое значение является намеренно пустым значением.

Символ

Символ — это уникальный и неизменный тип данных.

Symbol — это новый примитивный тип данных, появившийся в последней версии JavaScript ( ES6 ). Его главная особенность заключается в том, что каждый символ является абсолютно уникальным токеном, в отличие от других типов данных, которые могут быть перезаписаны.

Поскольку это продвинутый и малоиспользуемый тип данных, я не буду вдаваться в подробности, но полезно знать, что он существует.

 var sym = Symbol();

Объекты

Объект — это коллекция пар имя / значение.

Любое значение, которое не является просто строкой, числом, логическим, нулевым, неопределенным или символом, является объектом .

Вы можете создать объект с помощью пары фигурных скобок ( {}

 var batman = {};

Объекты состоят из свойств и методов . Свойства — это то, что является объектом, а методы — это то, что делает объект. Возвращаясь к аналогии с книгой, свойства похожи на существительные и прилагательные, а методы — на глаголы.

Свойство метод
batman.firstName batman.fight ()
batman.location batman.jump ()

Мы можем применить некоторые свойства к объекту batmanключ / значение ). Они будут разделены запятыми и записаны как propertyName: propertyValue

 var batman {
  firstName: "Bruce", // string
  lastName: "Wayne", 
  location: "Gotham", 
  introduced: 1939, // number
  billionaire: true, // Boolean
  weakness: null // null
};

Примечание: последний элемент в списке свойств объекта не заканчивается запятой.

Как вы можете видеть, мы можем применять любой тип данных в качестве значения в объекте. Мы можем получить индивидуальное значение с точкой ( .

 batman.firstName; // returns Bruce, a string

Мы также можем получить значение с помощью скобок.

 batman["firstName"]; // returns Bruce

Имя свойства JavaScript должно быть допустимой строкой JavaScript или числовым литералом. Если имя начинается с цифры или содержит пробел, к нему следует обращаться, используя обозначение в скобках. Читать: MDN

 batman.secret identity; // invalid
batman["Secret Identity"]; // valid

Метод выполняет действие. Вот простой пример.

 var batman {
  firstName: "Bruce",
  lastName: "Wayne", 
  secretIdentity: function() { // method
    return this.firstName + " " + this.lastName;
  }
};

Вместо простого типа данных в качестве значения у меня есть function functionfirstNamelastNamethis В этом примере thisbatman{}

 batman.secretIdentity(); // returns Bruce Wayne, a concatenation of two properties

Метод указывается в скобках. ( ()

Массивы

Массив хранит список в одной переменной.

Поскольку массив содержит более одного значения, это тип объекта.

Вы можете создать массив с парой прямых скобок ( []

 var ninjaTurtles = [];

Массивы не содержат пар имя / значение.

 var ninjaTurtles = [
  "Leonardo",
  "Michelangelo",
  "Raphael",
  "Donatello"
];

Вы можете получить индивидуальное значение, ссылаясь на index В программировании отсчет начинается с нуля, поэтому первым элементом в списке всегда будет [0]

 var leader = ninjaTurtles[0]; // assigns Leonardo to the leader variable

Вы можете увидеть, сколько элементов в массиве, с помощью свойства length

 ninjaTurtles.length; // returns 4

резюмировать

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