终止JS运行有如下几种可能:
一.终止函数的运行的方式有两种:
1、在函数中使用return,则当遇到return时,函数终止执行,控制权继续向下运行。
2、在函数中使用try-catch异常处理,需要结束时,使用throw抛出异常。
二.终止动画特效的运行的方式是使用stop方法:
1、stop([clearQueue],[gotoEnd]):停止所有在指定元素上正在运行的动画。
2、如果队列中有等待执行的动画(并且clearQueue没有设为true),将被马上执行。
3、终止表单提交的方式:在表单提交事件中使用returnfalse;可以阻止表单提交。
4、终止定时函数执行的方式:使用window.clearInterval(定时器对象)或window.clearTimeout(定时器对象)可以终止正在执行的定时器。
扩展资料:
S即Javascript,Javascript是一种由Netscape的LiveScript发展而来的脚本语言,主要目的是为了解决服务器终端语言,比如Perl,遗留的速度问题。
当时服务端需要对数据进行验证,由于网络速度相当缓慢,只有28.8kbps,验证步骤浪费的时间太多。于是Netscape的浏览器Navigator加入了Javascript,提供了数据验证的基本功能。
异步执行的函数需要使用回调来获取返回值你那种想等待回调函数执行后再把结果作为返回值的想法是无法实现,并且是极不可取的因为你并不知道需要多久该回调函数才能执行,让主线程阻塞在这儿等待不是一个正确的做法。
正确的做法还是在回调函数中获得值进行处理推荐写法:
var addre =""var bm = new BMap.Map("container")gpsxy = function (xx,yy,i,callback){//添加一个参数作为回调函数,该函数可以获取addre参数
var gpsPoint = new BMap.Point(xx,yy)
bm.clearOverlays()var marker = new BMap.Marker(gpsPoint)bm.addOverlay(marker)
bm.setCenter(gpsPoint)var gc = new BMap.Geocoder()
gc.getLocation(gpsPoint, function(rs){ var addComp = rs.addressComponents
addre = addComp.province + ", " + addComp.city + ", " + addComp.district + ", " + addComp.street + ", " + addComp.streetNumbercheck()
if(callback) callback(addre)//把addre传递到回调函数中,这样就可以在函数外部使用返回值了 })}
调用示范:gpsxy(10,10,1,function(addre){ alert(addre)//这儿就可以使用这个值了 })
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)