关于javascript对象声明的问题
比如如下代码:vartimer1;vartimer2;vartimer3;functionaa(i){vartimer;switch(i){case1:timer=tim...
比如如下代码:
var timer1;
var timer2;
var timer3;
function aa(i){
var timer;
switch(i)
{
case 1:
timer = timer1;
break;
case 2:
timer = timer2;
break;
case 3:
timer = timer3;
break;
}
如果这样子运行的话会出错,提示"timer"未定义,这是为什么?
一定要把var timer放在aa()这个函数的外面才行
我没有在外部引用这个timer阿..所有代码都是在aa()里面的.
我程序里当然没漏打"}"了..我这里只是截一部份所以少掉个符号.. 展开
var timer1;
var timer2;
var timer3;
function aa(i){
var timer;
switch(i)
{
case 1:
timer = timer1;
break;
case 2:
timer = timer2;
break;
case 3:
timer = timer3;
break;
}
如果这样子运行的话会出错,提示"timer"未定义,这是为什么?
一定要把var timer放在aa()这个函数的外面才行
我没有在外部引用这个timer阿..所有代码都是在aa()里面的.
我程序里当然没漏打"}"了..我这里只是截一部份所以少掉个符号.. 展开
展开全部
你aa函数少个}, 就是aa()函数没有结束大括号,不知道笔误,还是。。。。,
如果你完善大括号后,代码会是如下:
<script language="JavaScript" type="text/javascript">
var timer1;
var timer2;
var timer3;
function aa(i)
{
var timer;//你这里声明的是个局部变量,
switch(i)
{
case 1:
timer = timer1;
break;
case 2:
timer = timer2;
break;
case 3:
timer = timer3;
break;
// 不要忘记default,即 i 不等于1,2,3时
default:
timer = timer1;
}
// 如果需要 函数体可以返回timer
// return timer;
}
</script>
运行没有错误的。 关于你贴出来的这些代码,我改动后,运行没有错误的,你可以把我这些代码放在单独文件中测试。你出现的错误很有可能是其他代码在运行 或者调用这些代码时出错,如果还不可以解决,你可以百度和我聊,我帮你调试下。
如果你完善大括号后,代码会是如下:
<script language="JavaScript" type="text/javascript">
var timer1;
var timer2;
var timer3;
function aa(i)
{
var timer;//你这里声明的是个局部变量,
switch(i)
{
case 1:
timer = timer1;
break;
case 2:
timer = timer2;
break;
case 3:
timer = timer3;
break;
// 不要忘记default,即 i 不等于1,2,3时
default:
timer = timer1;
}
// 如果需要 函数体可以返回timer
// return timer;
}
</script>
运行没有错误的。 关于你贴出来的这些代码,我改动后,运行没有错误的,你可以把我这些代码放在单独文件中测试。你出现的错误很有可能是其他代码在运行 或者调用这些代码时出错,如果还不可以解决,你可以百度和我聊,我帮你调试下。
展开全部
如果你放里面,说明是局部变量,但是你aa()函数没有返回值,所以你的timer没办法返回到外面去,所以外面是引用不了你的timer的。
一个办法是你写到外面作为全局变量,一个是你在aa()里面return一个timer出去。
一个办法是你写到外面作为全局变量,一个是你在aa()里面return一个timer出去。
本回答被提问者采纳
展开全部
放外边是全局的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询