Aşağıdaki kod pasajı, işlev ve değişken aynı kapsamda aynı adı paylaştıklarında neler olduğunu görmek için yapılan bir testtir. Chrome'da, değişken tanımının referansta önceliği var görünüyor.Aynı ada sahip işlev ve değişken
- Adlandırılmış işlev yürütülebilir mi, yoksa değişken bildirimi tarafından tamamen gizlenmiş mi?
- Javascript'teki standart davranış, değişkenlerin aynı ada sahip işlevlere göre önceliği var mı?
, ancak iki ayrı soru sormak için savurgan görünüyordu.
Kodu:
JavaScript'inizde<!DOCTYPE html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script>
var overlapping = function() { return 'this is a var holding an anonymous function' };
function overlapping()
{
return 'this is a function definition';
}
output(overlapping, 'overlapping');
output(overlapping(), 'overlapping()');
function output(expression, description)
{
document.writeln('<li>' + (description ? ('<i>' + description + '</i>: ') : '') + expression + '</li>');
}
</script>
</body>
</html>
Ben değişken tanımı yaparak, JavaScript üstüne fonksiyonlarını yükleyici olduğunu tahmin ediyorum fonksiyon tanımı sonra ortaya: Bu, bu konuyla ilgili bazı iyi okuma olduğunu
: Olarak örnek kod nedenle okur. Bu nedenle son tanım - değişken - kullanılmış olanıdır. –