2
根據WHATWG和MDN,window.setTimeout
和window.setInterval
具有形式哪些瀏覽器(和版本)支持setTimeout和setInterval的回調參數?
var handle = window.setTimeout(handler [, timeout [, arguments... ] ]);
var handle = window.setInterval(handler [, timeout [, arguments... ] ]);
大多數消息來源說,(通用)Internet Explorer不支持可選arguments
。
是否有一個瀏覽器和版本的列表,不支持它?
的測試對於支撐的方式的一個例子是
<html>
<head><title>test</title></head>
<body>
setTimeout: <span id="t">testing..</span><br/>
setInterval: <span id="i">testing..</span>
<script type="text/javascript">
t = window.setTimeout(// setTimeout
function (b) { // callback
document.getElementById('t').innerHTML = (b || false); // test for arg1
},
0,
true // arg1
);
i = window.setInterval(// setInterval
function (b) { // callback
document.getElementById('i').innerHTML = (b || false); // test for arg1
window.clearInterval(i);
},
0,
true // arg1
);
</script>
</body>
</html>
隨着預期的結果true
,失敗導致如false
。
因爲它是那麼容易簡單地用一個匿名函數傳遞額外的參數*並且*它到處運行,爲什麼不使用它並避免頭痛? –
這是一個問題,我找不到任何地方的實際答案,因爲假設每個瀏覽器的每個版本都是相同的答案,所以我去了解並決定分享。 –