Logo
Книга для начинающих
ВходРегистрация
/
Программирование
/
Курс JavaScript
/

Параметры по умолчанию

JavaScript: Параметры по умолчанию

У некоторых функций есть необязательные параметры. Это значит, что для них заранее задано значение по умолчанию, и при вызове такой параметр можно не указывать.

Рассмотрим метод toFixed(), который округляет число до заданного количества знаков после запятой. toFixed() — метод, то есть функция, прикреплённая к значению и вызываемая через точку; подробно методы разберём в уроке про объекты.

const result = (10.25).toFixed(1); // => '10.3'

Обратите внимание на кавычки в результате — toFixed() возвращает строку, а не число, поэтому использовать её в дальнейших вычислениях напрямую нельзя.

Мы передали ему одно значение — точность округления (1 знак после запятой). Но этот параметр необязателен. Если его не указать, используется значение по умолчанию 0 — округление до целого:

console.log((10.25).toFixed()); // => '10'

Если нужна другая точность, её указывают явно:

console.log((3.14159).toFixed(2)); // => '3.14'
console.log((3.14159).toFixed(4)); // => '3.1416'
(10.25).toFixed(1)  →  аргумент: 1    →  '10.3'
(10.25).toFixed()   →  аргумент: (0)  →  '10'
                                └── значение по умолчанию

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

Сигнатура функции

У каждой функции есть сигнатура — описание её имени, параметров и порядка их использования. Сигнатура помогает понять, какие данные функция ожидает и что произойдёт, если параметры не указаны.

В документации необязательные параметры часто показывают в квадратных скобках. Например, сигнатура toFixed:

toFixed([digits])

Здесь digits — количество знаков после запятой. Квадратные скобки означают, что параметр необязателен; если его не указать, по умолчанию будет 0.

Как работать с новыми функциями

Когда вы встречаете новую функцию, удобно действовать по простому паттерну:

  1. Открыть документацию (например, MDN) и найти сигнатуру функции.
  2. Посмотреть примеры использования.
  3. Открыть консоль браузера или Node.js и попробовать вызвать функцию с разными аргументами.

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

Задание

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

Вычислите и выведите на экран три значения, каждое на отдельной строке:

  1. Объём топлива в литрах, необходимый для поездки. Округлите до одного знака после запятой — toFixed(1).
  2. Общую стоимость поездки в рублях. Округлите до двух знаков — toFixed(2).
  3. Стоимость поездки для каждого пассажира. Округлите до целого, вызвав toFixed() без аргумента (значение по умолчанию — 0 знаков).
distance ──────┐
               ├──→ fuel ──────┐
fuelConsumption ┘              ├──→ tripCost ──────┐
                               │                   ├──→ perPerson
fuelPrice ─────────────────────┘                   │
passengers ─────────────────────────────────────────┘
Коммерческий опыт и Трудоустройство

Полезное

  • Параметры по умолчанию

Команда проекта находится в телеграм-сообществе. Там можно задать любой вопрос и повлиять на проект

Нашли ошибку? Есть что добавить? Пулреквесты приветствуются
/
Программирование
/
Курс JavaScript
/

Параметры по умолчанию

JavaScript: Параметры по умолчанию

У некоторых функций есть необязательные параметры. Это значит, что для них заранее задано значение по умолчанию, и при вызове такой параметр можно не указывать.

Рассмотрим метод toFixed(), который округляет число до заданного количества знаков после запятой. toFixed() — метод, то есть функция, прикреплённая к значению и вызываемая через точку; подробно методы разберём в уроке про объекты.

const result = (10.25).toFixed(1); // => '10.3'

Обратите внимание на кавычки в результате — toFixed() возвращает строку, а не число, поэтому использовать её в дальнейших вычислениях напрямую нельзя.

Мы передали ему одно значение — точность округления (1 знак после запятой). Но этот параметр необязателен. Если его не указать, используется значение по умолчанию 0 — округление до целого:

console.log((10.25).toFixed()); // => '10'

Если нужна другая точность, её указывают явно:

console.log((3.14159).toFixed(2)); // => '3.14'
console.log((3.14159).toFixed(4)); // => '3.1416'
(10.25).toFixed(1)  →  аргумент: 1    →  '10.3'
(10.25).toFixed()   →  аргумент: (0)  →  '10'
                                └── значение по умолчанию

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

Сигнатура функции

У каждой функции есть сигнатура — описание её имени, параметров и порядка их использования. Сигнатура помогает понять, какие данные функция ожидает и что произойдёт, если параметры не указаны.

В документации необязательные параметры часто показывают в квадратных скобках. Например, сигнатура toFixed:

toFixed([digits])

Здесь digits — количество знаков после запятой. Квадратные скобки означают, что параметр необязателен; если его не указать, по умолчанию будет 0.

Как работать с новыми функциями

Когда вы встречаете новую функцию, удобно действовать по простому паттерну:

  1. Открыть документацию (например, MDN) и найти сигнатуру функции.
  2. Посмотреть примеры использования.
  3. Открыть консоль браузера или Node.js и попробовать вызвать функцию с разными аргументами.

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

Задание

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

Вычислите и выведите на экран три значения, каждое на отдельной строке:

  1. Объём топлива в литрах, необходимый для поездки. Округлите до одного знака после запятой — toFixed(1).
  2. Общую стоимость поездки в рублях. Округлите до двух знаков — toFixed(2).
  3. Стоимость поездки для каждого пассажира. Округлите до целого, вызвав toFixed() без аргумента (значение по умолчанию — 0 знаков).
distance ──────┐
               ├──→ fuel ──────┐
fuelConsumption ┘              ├──→ tripCost ──────┐
                               │                   ├──→ perPerson
fuelPrice ─────────────────────┘                   │
passengers ─────────────────────────────────────────┘
Коммерческий опыт и Трудоустройство

Полезное

  • Параметры по умолчанию

Команда проекта находится в телеграм-сообществе. Там можно задать любой вопрос и повлиять на проект

Нашли ошибку? Есть что добавить? Пулреквесты приветствуются
← ПредыдущийСледующий →
← ПредыдущийСледующий →
← ПредыдущийСледующий →

Ваше упражнение проверяется по этим тестам

// @ts-check

import { expect, test, vi } from 'vitest';

test('calling functions default params', async () => {
  const consoleLogSpy = vi.spyOn(console, 'log');
  await import('./index.js');

  const firstArg = consoleLogSpy.mock.calls.join('\n');

  expect(firstArg).toBe('37.8\n2426.76\n607');
});
← ПредыдущийСледующий →

Решение учителя откроется через:

20:00

waiting_clock
← ПредыдущийСледующий →