简单的JS问题求助(刚入门望答疑)

JavaScript07

简单的JS问题求助(刚入门望答疑),第1张

1、你用的是for循环。里面有个i++,每次循环一次i就加一次。当循环到第五次的时候也就是显示4的时候后,仍然会加一次i。所以最后i是5.

2、setTimeout的机制是异步执行。所以for循环的时候根本不会等setTimeout执行完了,再循环,而是一口气把i的数字加到5。然而循环中的setTimeout语句会被排入内存中排序,等到时间到了,再执行setTimeout。这是js的异步执行的特征。

<script type="text/javascript">

var arr = [1,3,6,2,7,8,2,5,7,8,0]

var count2 = 0

var count7 = 0

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

if(arr[i] === 2){

console.log("2出现在第"+i+"个")

count2++

}

if(arr[i] === 7){

console.log("7出现在第"+i+"个")

count7++

}

}

           console.log("2出现了"+count2+"次")

           console.log("7出现了"+count7+"次")

</script>

ID不要设定为纯数字。

<table id="myid" name="t"></table>

用纯js这样做:

elem = getElementById('myid')

id = elem.id

用jQuery:

id = $('#myid').attr('id')

望采纳