Описание тега hoisting
Подъем означает, что локальные переменные внутри области видимости функции обрабатываются так, как если бы они были объявлены в начале оценки функции, независимо от того, где они фактически объявлены.
Подъем позволяет объявлять переменные и функции в любом порядке. Подъем объявлений переменных вне циклов - это обычная оптимизация компилятора. Например:
function g(A, x, y)
for k = 1:2000
x = x[k]
for l = 1:2000
if x && y[l]
A[l,k] += .1
end
end
end
end
function g(A, x, y)
k = 0
x = x[k]
for k = 1:2000
for l = 1:2000
if x && y[l]
A[l,k] += .1
end
end
end
end
Объявления функций подняты на следующих языках:
- JavaScript
- ActionScript
- VBScript
- Python
Объявления переменных поддерживаются на следующих языках:
- JavaScript
- ActionScript
- VBScript
Ссылки