我以为只会alert一次了
<!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>
</head>
<body>
<script type="text/javascript">
function Go(){
var arg;
return function(){
if(!arg){
alert(arg);
arg = true;
}
}
}
Go()()
Go()()
Go()()
Go()()
Go()()
</script>
</body>
</html>
<!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>
</head>
<body>
<script type="text/javascript">
function Go(){
var arg;
return function(){
if(!arg){
alert(arg);
arg = true;
}
}
}
Go()()
Go()()
Go()()
Go()()
Go()()
</script>
</body>
</html>
解决方案 »
- 顶者有分======VML流程图控制,动态、可修改------------jsPlumb插件使用----
- JQuery这样写有问题么?为什么无法实现预期的效果
- 跪求这个网站上的层轮显的效果怎么做?
- 不错的文章!!!
- 这段代码怎么样才能通过W3C标准验证呢
- 如何实现网页中隐藏音乐、电影地址的功能?或者说即使让其他人知道了地址也无法下载!
- 如何让数字型转换字符型,是不是只有字符型才能用length方法?
- 有人遇到过这样的问题吗?
- ======= 请教一个正则,高手请。。。。。 ========
- js怎么播放序列帧动画
- window.onload=initLinks作用
- IE8下JS无法取得本地图片尺寸
一级函数或作用域取得的变量,而这些变是不会随上一级函数的执行完成而销毁
所以应该这么写才对.........
<!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>
</head>
<body>
<script type="text/javascript">
function Go(){
var arg;
return function(){
if(!arg){
alert(arg);
arg = true;
}
}
}
var ss = Go()()
ss()
ss()
ss()
ss()
</script>
</body>
</html>
var ss = Go()
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>
<script type="text/javascript">
//每次通过Go()来获取下面的function时都会重新创建一个新的arg对象。所以每次都alert
var arg;//方法1 放到外边
function Go(){
//方法2 直接删除arg 加不加到外边都可以
return function(){
if(!arg){
alert(arg);
arg = true;
}
}
}
Go()()
Go()()
Go()()
Go()()
Go()()
</script>
</body>
</html>