Рубрики
Без рубрики

Аргументы против параметров и параметр REST

Знание разницы между аргументами и параметрами может быть важно. Но прежде чем мы начнем, просто … с меткой JavaScript, WebDev, производительности, технологии.

Знание разницы между аргументами и параметрами может быть важно.

Но прежде чем мы начнем, просто кратко отметить, что наш новый курс, Основы угловой , вышел и совершенно свободен. Вот так. 100% бесплатно. Ничего за платной. Это не наполовину курс или что -то в этом роде. Это вся энчилада. Проверьте это.

И для видео -версии этого блога нажмите Здесь Анкет

Я недавно запустил быстрый маленький Опрос Twitter Чтобы увидеть, знали ли люди, знали ли разницу между параметрами и аргументами. Результаты опроса были довольно интересными.

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

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

В приведенном выше примере «ItemName» и «количество» являются параметрами, а «Habsanitizer» и 300 – аргументы.

Это на самом деле подсказывает нас, почему мы, объективные аргументы в JavaScript, называются аргументы, а не параметры. Аргументы – это значения, а не имена. Объект аргументов содержит значения, но не заботится о именах.

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

Итак, в этом примере:

Обратите внимание, как объект аргументов никогда не был создан и не ссылался, он просто существует. Внутри этой функции эти три вызова выходят из «2», «Дезинфицирующее средство для рук» и «300» соответственно.

В настоящее время , почему есть объект аргументов, когда у нас есть названные параметры в любом случае?

Что ж, JavaScript просто настолько свободный, что ему все равно, если вы передаете ему больше аргументов, чем есть параметры.

Теперь посмотрите на предложение, которое я только что напечатал. Это отличный пример того, почему нам нужно понять разницу между аргументами и параметрами. Если вы используете эти два термина взаимозаменяемо, то предложение не имеет смысла. Но они не одно и то же. И понимание их позволяет нам узнать о таких вещах, как объект аргументов.

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

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

К сожалению, аргументы-это всего лишь массивный объект, а не полный массив, поэтому мы не можем делать такие вещи, как уменьшить ().

Но спасибо Ecmascript за то, что приехали на помощь здесь. Параметр REST – это способ получить лучшее из обоих миров.

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

Так что наш новый метод AddeveryThing будет выглядеть так:

Вы можете смешать в названных параметрах (только до параметра REST).

Таким образом, для большинства применений параметр REST предпочтительнее объекта Argimes, и многие разработчики теперь считают, что объект аргументов является кодовым запахом.

И это параметр REST, а также аргументы и параметры. Думаешь, ты понял? Попробуйте этот вызов И посмотрите, сможете ли вы решить это!

Как учиться в пять раз быстрее

Здесь, в Thinkster, мы используем образовательную науку, чтобы научить вас в пять раз быстрее, чем что -то еще. Как? Благодаря надлежащим инструкциям, основанным на принципах образования и практических упражнениях, вы сохраните от 75% до 90% от того, что вы изучаете. Без этих методов вы помните только от 7% до 15% от того, что вы узнаете. Вот почему вы можете посмотреть видео или курс или прочитать блог и почувствовать, что вам нужно посмотреть еще пару, прежде чем вы действительно «получите его».

Вы можете увидеть это в действии на наших курсах. И вы можете получить его бесплатно в наших основаниях углового курса. Проверьте это.

Счастливого кодирования!

Зарегистрироваться для моей бюллетени Здесь Анкет

Посетите нас: Thinkster.io | Facebook: @gothinkster | Twitter: @gothinkster

Оригинал: “https://dev.to/thinkster/arguments-vs-parameters-and-the-rest-parameter-105n”