js怎么进行同步执行

JavaScript035

js怎么进行同步执行,第1张

**

* 解决异步加载问题

* */

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

方法1 内部用了var 表示内部变量 执行完一次后会自动释放;

方法2 内的变量cc不能与方法1重名;

示例代码如下 测试可以

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script language="javascript" type="text/javascript">

var str=''

function cfun(obj) { str += obj.value }

function selall(){

var cc = document.getElementsByTagName("input")

for (var i = 0i <cc.lengthi++) {

cfun(cc[i])

}

alert(str)

}

</script>

</head>

<body>

<input type="text" id="txt1" value="你好" />

<input type="text" id="txt2" value="朋友" />

<a href="javascript:selall()">点击显示</a>

</body>

</html>

你说的同步是一起执行还是 和ajax的同步是单线程呢

代码是从上往下执行,执行效率特别快 可以认为是一起执行的

如果先执行一个在执行一个 那么就在先执行那里调用一个function方法,这个function方法就是你想要后执行的js(也就是js掉用js)