日期:2014-05-16 浏览次数:20470 次
?
<script>
        var test1 = 'Just a test!'; 
	function test1(x){ 
		return x*x; 
	};
	alert(test1);  
	alert(test1(3));
	var test2 = 'Just another test!'; 
	var test2 = function(x){ 
		return x*x; 
	};
	alert(test2(5)); 
	alert(test2);
</script>
?
?先看一下上面这段代码,4个alert分别会打印出什么?
?下面给出答案:
?
function test1(x){ 
	return x*x; 
};
var test1 = 'Just a test!';
//方式一
function test2(x){
        return x*x; 
}
//方式二
var test2 = function(x){ 
	return x*x; 
};
?方式一和方式二有什么区别吗?不都是定义了一个叫test2的函数吗?单就这方面来看,确实没有什么区别,但是,方式一是“定义式”的,方式二是“赋值式”的,放到整个上下文中,就会对执行的顺序产生影响。所以,这个细节一定要注意啊!