var nextTaskName= null;
var getNextTaskName = function(z){
nextTaskName =z
alert(nextTaskName); //1
}
alert(nextTaskName);//2
var getNextTaskName = function(z){
nextTaskName =z
alert(nextTaskName); //1
}
alert(nextTaskName);//2
nextTaskName =z 这个只作用于function里面
在外面还是nextTaskName= null;
var getNextTaskName =cc(z)
alert(nextTaskName);//2function cc(z){
nextTaskName =z //这个不是上面的 nextTaskName
alert(nextTaskName); //1
}
但两个地方不是顺序执行的这是肯定的,所以很简单,分析代码执行的顺序就明白为什么两个地方值不同了
第二个alert时函数没有调用很明显var nextTaskName= null;
var getNextTaskName = function(z){
nextTaskName =z
alert(1+","+nextTaskName); //1
}
alert(2+","+nextTaskName);//2
这样写,你马上就知道哪个先执行了