javascript 执行顺序 k的值可以在A(k);中被改变吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 ..... .....//引入接口 var k; var bCycleCompleted=false;//是否下面的循环已经完成的BOOLEAN标志 for(var i=0;i<10;i++) { A(k);//A是接口提供的一个函数 if(i==9){bCycleCompleted=true} } if (bCycleCompleted){alert(k);}//加个判断看看呢? 是没执行到还是压根就没改变值啊,能不能让接口给个返回值就是K,赋给K再ALERT看看 alert(k);//在这里取不到正确的k值原因是A(k);还没执行完就执行到这句了。---A(k)没执行完?怎么会?---是说A(k)里调用了其它的异步程序,这些异步程序没执行完吧? 我觉得A(k)最好要有返回值,然后k=A(k),这样试一试就知道执行顺序了 3楼,这个判断是可以判断出来有没执行完,但是判断出来又能怎么样呢?你这样写就不会执行alert(k);这句了。5楼,A(k)里边是个什么机制就不清楚了,这是个接口的东西,反正是在A(k)没有执行完的时候就异步执行到了alert(k)。有办法吗???真的很头疼啊,再求解答..... <script> var k; for(var i=0;i<10;i++) { A(k);//A是接口提供的一个函数 } alert("这是主函数"+k);//在这里取不到正确的k值原因是A(k);还没执行完就执行到这句了。 function A(i) { alert("这是A的方法"+i); }</script>很明显,测试证明,先执行A(k),最后执行alert(K)。 你的意思是A(K)还没执行结束就到了alert,只有一个原因,就是A(K)中遇到了错误或者代码有误,还没执行结束,他就return了,所以,10次循环过后,A(K)方法都是执行中直接return了。否则不可能出现A(K)没执行就先执行alert的 9楼 <script> var k; for(var i=0;i<10;i++) { A(k);//A是接口提供的一个函数 } alert("这是主函数"+k);//在这里取不到正确的k值原因是A(k);还没执行完就执行到这句了。//如果在这句上加上个延时的话就能取到正确的值,setTimeout(function(){alert("这是主函数"+k);},1000); 为什么? function A(i) { alert("这是A的方法"+i);//XXXXXXXXXXXXX这段实际上是很复杂费时间的,要这么简单的话自然就不会出现那种情况了 }</script> 请教一下这段JS是如何传值的? xml 转 json javascript中的继承, 找回丢失的constructor 怎样解决清空文本框问题 js 右键菜单增加菜单项 onkeydown得到TEXT内当前输入 老大,看看这个语句为什么通不过 javascript 打印方向 怎样用js实现对服务器控件(checkbox)的全选 请教:如何可以使钟钟写的无边窗口永远处于其他的窗口上面?! 请教怎样生成图片 想学框架
.....
.....//引入接口
var k;
var bCycleCompleted=false;//是否下面的循环已经完成的BOOLEAN标志
for(var i=0;i<10;i++)
{
A(k);//A是接口提供的一个函数
if(i==9){bCycleCompleted=true}
}
if (bCycleCompleted){alert(k);}//加个判断看看呢?
---A(k)没执行完?怎么会?
---是说A(k)里调用了其它的异步程序,这些异步程序没执行完吧?
5楼,A(k)里边是个什么机制就不清楚了,这是个接口的东西,反正是在A(k)没有执行完的时候就异步执行到了alert(k)。有办法吗???真的很头疼啊,再求解答.....
var k;
for(var i=0;i<10;i++)
{
A(k);//A是接口提供的一个函数
}
alert("这是主函数"+k);//在这里取不到正确的k值原因是A(k);还没执行完就执行到这句了。 function A(i)
{
alert("这是A的方法"+i);
}
</script>很明显,测试证明,先执行A(k),最后执行alert(K)。
var k;
for(var i=0;i<10;i++)
{
A(k);//A是接口提供的一个函数
}
alert("这是主函数"+k);//在这里取不到正确的k值原因是A(k);还没执行完就执行到这句了。
//如果在这句上加上个延时的话就能取到正确的值,setTimeout(function(){alert("这是主函数"+k);},1000); 为什么?
function A(i)
{
alert("这是A的方法"+i);//XXXXXXXXXXXXX这段实际上是很复杂费时间的,要这么简单的话自然就不会出现那种情况了
}
</script>