Явление:
1. В JavaScript объявление переменных и функций будет способствовать высшему исполнению.
2. Улучшение функции выше, чем улучшение переменных.
3. Если внешняя переменная с тем же именем объявлена внутри функции с VAR, функция больше не будет смотреть вверх.
4. Анонимные функции не будут способствовать.
5. Функции в разных блоках <сценария> не влияют друг на друга.
пример:
Продвижение декларации функции выше, чем объявление переменной
// Объявит переменную a и функцию avar a; функция a () {} alert (typeof a); // отображается «функция», которая предварительно доказывает, что приоритет функции выше, чем var. // сначала объявит функцию, а затем объявит переменную, доказывая, что приведенный выше пример не перезаписывает функцию переменной a () {} var a; оповещение (тип a); // Дисплей все еще является «функцией», а не «неопределенным», то есть приоритет функции выше, чем var. // Объявите переменную и назначить функцию значения a () {} var a = 1; alert (typeof a); // номер, это не функция в настоящее время. // Примечание: «var a = 1» эквивалентен «var a; a = 1», то есть сначала объявить, а затем присвоить значение. «A = 1» эквивалентно переназначению A, что естественно!Функция использует VAR для определения той же переменной, что и внешняя, и функция больше не будет искать внешние переменные вверх.
var value = 'hello'; function show () {alert (value); if (! value) {var value = 'function'; } alert (value);} show () // функция вызывается здесь и выясняется «неопределенная», «функция» // Приведенный выше пример эквивалентен var value = 'hello'; function show () {var value; // Обратите внимание на эту строку оповещения (значение); if (! value) {value = 'function'; // Эта строка удаляет var} alert (value);} show () // 1. Если значение, определенное внутри, в выставке в приведенном выше столбце не использует VAR, будет использоваться внешняя переменная, и появится «Привет», «Привет». // 2. Если значение не определена внутри функции, значение снаружи значения также может быть получено.Анонимные функции не улучшатся вверх
getName () var getName = function () {alert ('closule')} function getName () {alert ('function')} getName () // Приведенный выше код эквивалентен функции getName () {// Функция повышается worer выскакивает "функция" и "rolcule"Функции в разных блоках <сценария> не влияют друг на друга
<script> getName () var getName = function () {alert ('rowule')} <script> <script> function getName () {alert ('function')} <script> // Ошибка выполнения кода: TypeError: getNamПриведенное выше краткое обсуждение об улучшении переменных и объявлений функций в JavaScript является всем контентом, которым я делюсь с вами. Я надеюсь, что вы можете дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.