Вызов функции JavaScript
Есть четыре вида функции JavaScript называется.
Каждый различные способы инициализации этого режима.
это ключевое слово
В общем, в Javascript, это относится к текущим функциям объектов, выполненных.
Обратите внимание , что это зарезервированное слово, вы не можете изменить это значение. |
Вызов функции JavaScript
В предыдущем разделе мы узнали, как создать функцию.
Функция код выполняется после того, как функция вызывается.
Как вызов функции
примеров
возвращать * B;
}
туРипсЫоп (10, 2); // туРипсЫоп (10, 2) возвращает 20
Попробуйте »
Выше функция не принадлежит ни одному объекту. Тем не менее, в JavaScript, это всегда глобальный объект по умолчанию.
В HTML, глобальный объект по умолчанию является HTML-страница сама, поэтому функция является частью страницы HTML.
В браузере страницы окне браузера объекта (окно объектов). Над функцией автоматически становится функцией объекта окна.
туРипсЫоп () и window.myFunction () одно и то же:
примеров
возвращать * B;
}
window.myFunction (10, 2); // window.myFunction (10, 2) возвращает 20
Попробуйте »
Это часто используемый метод вызывает функцию JavaScript, но это не хорошая практика программирования глобальные переменные, методы или функции, вероятно, чтобы вызвать конфликты имен ошибку. |
Глобальные объекты
Когда функция вызывает сама по себе не является объектом ?, Это значение будет глобальным объектом.
В веб-браузере, окно браузера глобальный объект (окно объектов).
Примеры этого возвращаемого значения является объект окна:
Функция как глобальный объект для вызова, это будет значение глобального объекта. Используйте объект окна в качестве переменной, вероятно, вызовет программу к краху. |
В качестве функции вызова метода
В JavaScript вы можете использовать функцию, определенную в качестве метода объекта.
В следующем примере создается объект (MyObject), объект имеет два свойства (имя и фамилия), а также способ (FULLNAME):
примеров
Firstname: "Джон",
LastName: "Doe",
FULLNAME: функция () {
вернуть this.firstName + "" + this.lastName;
}
}
myObject.fullName (); // возвращает "John Doe"
Попробуйте »
Метод FULLNAME является функцией. Функция принадлежит к объекту. MyObject является владельцем функции.
этот объект имеет код JavaScript. Значение MyObject экземпляра объекта этого.
Следующее испытание! FullName изменить этот метод и возвращаемое значение:
примеров
Firstname: "Джон",
LastName: "Doe",
FULLNAME: функция () {
это вернуть;
}
}
myObject.fullName (); // возвращает [объект Object] (владелец объекта)
Попробуйте »
Функция как вызов метода объекта, так что это будет значение самого объекта. |
Используйте вызовы функций конструктора
Если функция вызывается перед использованием нового ключевого слова, конструктор вызывается.
Похоже, чтобы создать новую функцию, но на самом деле функции JavaScript объекты воссозданы:
примеров
Функция туРипсЫоп (arg1, arg2) {
this.firstName = arg1;
this.lastName = арг2;
}
// Это создает новый объект
переменная х = новый туРипсЫоп ( "Джон", "Doe");
x.firstName; // возвращает "John"
Попробуйте »
Вызов конструктора для создания нового объекта. Новый объект наследует свойства и методы конструктора.
Конструктор это ключевое слово не имеет никакого значения. это значение для создания экземпляра объекта (новый объект) в вызове функции. |
В зависимости от функции вызова метода
В JavaScript функции являются объектами. Функция JavaScript имеет свои атрибуты и методы.
звоните () и применить () функция является предопределенным способом. Оба метода могут быть использованы для вызова функции, первый аргумент два метода должен быть сам объект.
примеров
возвращать * B;
}
myFunction.call (MyObject, 10, 2); // возвращает 20
примеров
возвращать * B;
}
туАггау = [10,2];
myFunction.apply (MyObject, туАггау); // возвращает 20
Оба метода используют сам объект в качестве первого параметра. Разница заключается в том, что второй аргумент: применить это массив параметров, то есть множество параметров, объединенных в массив передается, а затем вызвать в качестве параметра вызова прохождения (с начала второго аргумента).
В JavaScript строгого режима (строгий режим), вызов функции в первый аргумент будет это значение, даже если параметр не является объектом.
В строгом режиме без JavaScript (нестрогий режим), если значение первого параметра равно нулю или не определен, он будет использовать вместо того, чтобы глобальный объект.
Таким образом , вы можете установить значение по вызову () или применить (), и вызов в качестве нового метода объекта , который уже существует. |