在JavaScript中,在同一个<script..../>元素中时,JavaScript允许先调用函数,然后在定义该函数-----这实际上时JavaScript的函数提升功能,但在不同的<script..../>元素中时,必须先定义函数,在调用该函数。也就是说,在后面的<script..../>元素中可以调用前面的<script..../>里定义的函数,但前面<script..../>元素不能调用后面<script..../>元素中定义的函数。
下面我们写个例子验证一下:
<script type="text/javascript">
//先调用,在声明。
test();
function test() {
alert("AAA");
}
</script>
输出为:
如果在另一个<script..../>中调用
<script type="text/javascript">
//先调用,在声明。
f("张三");
function test() {
alert("AAA");
}
</script>
<script type="text/javascript">
var f = function(name) {
alert(name);
};
</script>