<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script>
var f="xxx";
window.οnlοad=function w(x)
{
console.log(f);
var f=function(){};
function f(x)//2
{
console.log(x);
}
}/*有两种形式可以定义函数,其一为函数定义表达式,为var f=function形式的,另外一种为函数声明语句,function functionname形式的,
则输出xxx。此时相当于f声明的是全局变量,并没有局部变量覆盖全局变量这样的情况了。*/
</script>
</head>
<body>
</body>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script>
var f="xxx";
window.οnlοad=function w(x)
{
console.log(f);
var f=function(){};
function f(x)//2
{
console.log(x);
}
}/*有两种形式可以定义函数,其一为函数定义表达式,为var f=function形式的,另外一种为函数声明语句,function functionname形式的,
function语句中的花括号是必须的,函数声明只能出现在所嵌套函数的顶部,也就是说函数定义不能出现在if语句,while循环或其他任何语句中。
则输出xxx。此时相当于f声明的是全局变量,并没有局部变量覆盖全局变量这样的情况了。*/
</script>
</head>
<body>
</body>
</html>
如果有理解不对的地方,欢迎讨论,其中我们使用console.log而不是alert是为了保证JavaScript的非侵入性