Хотя затенение никогда не должно использоваться (или просто для запутывания), потому что оно запутывает, я хотел полностью его понять. И я получил эту странную вещь:Странное поведение при затенении
alert(parseInt('123'));//Here, I expected 123 but it's 'overshadowed'
function parseInt(){return 'overshadowed';}
alert(parseInt('123'));//Here it's 'overshadowed' too
Почему первая alert
выхода «в тени», тогда как функция еще не модифицированная?
PS: Я был вдохновлен Variable shadowing in JavaScript
Обычно это называется «подъем». http://www.adequatelygood.com/2010/2/JavaScript-Scoping-and-Hoisting – ajm
@ajm: да, спасибо за отзыв, добавив это в ответ. –