* 解决异步加载问题
* */
function promise1(fun){
this.fun1=function(){}
this.fun2=function(){}
try{
fun(this.sol)
}catch(err){
}
}
promise1.prototype={
fun1:function(){},
fun2:function(){},
sol:function(res){
setTimeout(function(){
promise1.prototype.fun1(res)
promise1.prototype.fun2(res)
},0)
},
then:function(fun1){
promise1.prototype.fun1=fun1
return this
},
err:function(fun2){
promise1.prototype.fun2=fun2
}
}
/**
*方法使用:方法1比方法2先执行
**/
new promise1(function(door){
functionA(door)//方法1
}).then(function(){
functionB() //方法2
})
functionA : fucntion(){
door
}
你说的同步是一起执行还是 和ajax的同步是单线程呢
代码是从上往下执行,执行效率特别快 可以认为是一起执行的
如果先执行一个在执行一个 那么就在先执行那里调用一个function方法,这个function方法就是你想要后执行的js(也就是js掉用js)
用jquery$.ajax({url:url,
data:para,
dataType: 'json',
async:false,//(默认: true) 默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
success: function(data){}})