請問為什么會這樣
<!DOCTYPE html>
<html>
?<head>
? <title>瀏覽器對象</title> ?
? <meta http-equiv="Content-Type" content="text/html; charset=gkb"/> ??
?</head>
?<body>
? <!--先編寫好網頁布局-->
? ? ?<h4>操作成功</h4>
? ? <p><span id="time">5</span>秒后回到主頁<a href="javascript:history.back()">返回</a></p>
? <script type="text/javascript"> ?
? ? var but=document.getElementById("time");
? ? var but1=setInterval("if(but>1){document.getElementById('time').innerHTML= --but}else{location.assign('http://www.xianlaiwan.cn');}",1000)
</script>?
</body>
</html>
我把--but 改成but-- ,結果就會變成當秒鐘運行 2 就直接跳轉 ? ?這是為什么,
而我不改的話 ,就會到0的時候才跳轉 ?,為什么
2015-04-27
but-- 和 --but 是有區別
前者是先賦值在運算
后者先運算在賦值。
即
var but = 5;
var but1 = 5;
var num = but--;//先賦值在運算,即先執行num=but 在執行-- 所以=5
var num1 = --but1;//選運算在賦值 即先執行--在執行num=but ?所以4
document.write(num);
document.write(num1);