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

Параметры «это» и «аргументы» в JavaScript

Взгляд на два параметра, неявно переданные при вызове функции. С меткой JavaScript.

Взгляд на два параметра, неявно переданные при вызова функции

Когда функция вызывается, существует два параметра, которые неявно передаются функции. Под косвенно я имею в виду, что вы не указываете их в списке параметров, но они все еще автоматически передаются в функцию и доступны изнутри функции.

Эти два параметра:

  • этот параметр
  • Аргументный параметр

это Параметр представляет объект, на котором вызывается наша функция, также называется Функциональный контекст .

аргументы Параметр представляет все аргументы, которые передаются в функцию, когда она вызывается.

То, как вызывается функция, имеет последствия для того, как устанавливаются параметры этого и аргументов.

Посмотрите на эту функцию, которая распечатывает аргумент, который он прошел явно, но также и параметр This and Arguments, которые неявно передаются:

function myHouse(address) {
  console.log("Address:\n", address);
  console.log("this parameter:\n", this);
  console.log("arguments parameter:\n", arguments);
}

myHouse('123 Main st.');

Результатом вызова функции является:

Address:
 123 Main st.

this parameter:
 Object [global] {
  global: [Circular],
  clearInterval: [Function: clearInterval],
  clearTimeout: [Function: clearTimeout],
  setInterval: [Function: setInterval],
  setTimeout: [Function: setTimeout] { [Symbol(util.promisify.custom)]: [Function] },
  queueMicrotask: [Function: queueMicrotask],
  clearImmediate: [Function: clearImmediate],
  setImmediate: [Function: setImmediate] {
    [Symbol(util.promisify.custom)]: [Function]
  }
}

arguments parameter:
 [Arguments] { '0': '123 Main st.' }

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

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

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

Оригинал: “https://dev.to/cesareferrari/the-this-and-arguments-parameters-in-javascript-4nh0”