Курс по JavaScript для начинающих: Модуль 2. Базовый синтаксис. Урок 4. Примитивные типы данных

Курс по JavaScript для начинающих: Модуль 2. Базовый синтаксис. Урок 4. Примитивные типы данных

Введение

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

Числа (number)

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

Примеры чисел:

let integer = 42;
let float = 3.14;

Особенности:

  • Операции с числами: Вы можете выполнять различные арифметические операции с числами, такие как сложение, вычитание, умножение и деление.
  • NaN: Специальное значение NaN (Not a Number) появляется, если операция с числами невозможна.
let result = 0 / 0; // NaN

Строки (string)

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

Примеры строк:

let singleQuoteString = 'Hello, world!';
let doubleQuoteString = "Hello, world!";
let templateString = `Hello, world!`;

Особенности:

  • Конкатенация строк: Вы можете объединять строки с помощью оператора +.
let greeting = 'Hello, ' + 'world!'; // "Hello, world!"

  • Шаблонные строки: Шаблонные строки позволяют вставлять выражения внутрь строки с помощью синтаксиса ${}.
let name = "John";
let message = `Hello, ${name}!`; // "Hello, John!"

Логические значения (boolean)

Логический тип данных boolean имеет два возможных значения: true (истина) и false (ложь). Этот тип данных часто используется в условных конструкциях и циклах.

Примеры логических значений:

let isTrue = true;
let isFalse = false;

Особенности:

  • Логические операторы: Вы можете использовать логические операторы для выполнения операций с логическими значениями (&&||!).
let result = true && false; // false

Null и Undefined

Null

null представляет намеренное отсутствие значения. Это специальное значение, которое можно присвоить переменной.

Пример null:

let emptyValue = null;

Undefined

undefined означает, что переменная была объявлена, но ей не было присвоено значение.

Пример undefined:

let notAssigned;

Отличия:

  • null — значение присваивается явно.
  • undefined — значение не присваивается.

Символы symbol

Символ symbol — это уникальный и неизменяемый тип данных, который используется для создания уникальных идентификаторов.

Пример символа:

let uniqueId = Symbol('id');

Особенности:

  • Каждый символ уникален, даже если они созданы с одинаковым описанием.
let symbol1 = Symbol('id');
let symbol2 = Symbol('id');
console.log(symbol1 === symbol2); // false

Большие числа bigint

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

Пример BigInt:

let bigNumber = 1234567890123456789012345678901234567890n;

Особенности:

  • BigInt создаются с использованием суффикса n.
let anotherBigInt = 123456789n;

Использование оператора typeof

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

Примеры использования typeof:

let num = 42;
let str = "Привет";
let isAvailable = true;
let emptyValue = null;
let notDefined;
let sym = Symbol("unique");
let bigNum = 1234567890123456789012345678901234567890n;

console.log(typeof num); // "number"
console.log(typeof str); // "string"
console.log(typeof isAvailable); // "boolean"
console.log(typeof emptyValue); // "object" (особенность JavaScript)
console.log(typeof notDefined); // "undefined"
console.log(typeof sym); // "symbol"
console.log(typeof bigNum); // "bigint"

Заключение

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

Контрольные вопросы

Какой тип данных используется для представления целых и дробных чисел в JavaScript?

  • string
  • number
  • boolean
  • bigint

Какой тип данных используется для представления текста в JavaScript?

  • number
  • boolean
  • string
  • symbol

Какое значение представляет намеренное отсутствие значения?

  • undefined
  • null
  • NaN
  • false

Какое значение имеет переменная, если она была объявлена, но ей не было присвоено значение?

  • null
  • 0
  • undefined
  • NaN

Какой тип данных имеет два возможных значения: true и false?

  • string
  • number
  • boolean
  • undefined

Что такое символ (symbol) в JavaScript?

  • Уникальный и неизменяемый тип данных
  • Тип данных для больших чисел
  • Текстовое значение
  • Логическое значение

Какой суффикс используется для создания значений типа BigInt?

  • b
  • i
  • g
  • n

Что возвращает оператор typeof при проверке типа значения 42?

  • string
  • number
  • boolean
  • undefined

Какой тип данных будет у значения null при использовании оператора typeof?

  • null
  • undefined
  • object
  • boolean

Какой результат вернет typeof для переменной, содержащей символ?

  • string
  • symbol
  • object
  • function

Упражнения

Упражнение 1: Работа с числами

Создайте переменные для целого и дробного числа, выполните с ними арифметические операции и определите результат с помощью typeof.

Задача:

  1. Объявите переменные a и b с значениями 10 и 3.5.
  2. Выполните операции сложения, вычитания, умножения и деления.
  3. Выведите результаты и их типы в консоль.

Пример:

let a = 10;
let b = 3.5;

let sum = a + b;
let difference = a - b;
let product = a * b;
let quotient = a / b;

console.log(sum); // 13.5
console.log(typeof sum); // "number"

console.log(difference); // 6.5
console.log(typeof difference); // "number"

console.log(product); // 35
console.log(typeof product); // "number"

console.log(quotient); // 2.857142857142857
console.log(typeof quotient); // "number"

Упражнение 2: Работа со строками

Создайте строковые переменные и выполните с ними различные операции, включая конкатенацию и использование шаблонных строк.

Задача:

  1. Объявите переменные firstName и lastName с вашими именем и фамилией.
  2. Создайте переменную fullName, объединив firstName и lastName.
  3. Выведите fullName с использованием шаблонных строк.

Пример:

let firstName = 'Тимур';
let lastName = 'Ахметов';

let fullName = firstName + ' ' + lastName;
console.log(fullName); // "Тимур Ахметов"

let message = `Привет, ${firstName} ${lastName}!`;
console.log(message); // "Привет, Тимур Ахметов!"

Упражнение 3: Работа с логическими значениями

Создайте переменные с логическими значениями и выполните логические операции.

Задача:

  1. Объявите переменные isStudent и isLoggedIn с значениями true и false.
  2. Выполните логические операции &&, || и !.
  3. Выведите результаты в консоль.

Пример:

let isStudent = true;
let isLoggedIn = false;

console.log(isStudent && isLoggedIn); // false
console.log(isStudent || isLoggedIn); // true
console.log(!isStudent); // false

Упражнение 4: Определение типа данных

Используйте оператор typeof для определения типов данных различных переменных.

Задача:

  1. Создайте переменные различных типов данных (number, string, boolean, null, undefined, symbol, bigint).
  2. Определите их типы с помощью оператора typeof и выведите результаты в консоль.

Пример:

let num = 42;
let str = "Привет";
let isAvailable = true;
let emptyValue = null;
let notDefined;
let sym = Symbol("unique");
let bigNum = 1234567890123456789012345678901234567890n;

console.log(typeof num); // "number"
console.log(typeof str); // "string"
console.log(typeof isAvailable); // "boolean"
console.log(typeof emptyValue); // "object"
console.log(typeof notDefined); // "undefined"
console.log(typeof sym); // "symbol"
console.log(typeof bigNum); // "bigint"
Оставить комментарий

Комментарии

CommentsEmpty

Добавить комментарий

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