<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>setTimeout アーカイブ - nyanblog ~にゃんぶろぐ~</title>
	<atom:link href="https://nyanblog2222.com/tag/settimeout/feed/" rel="self" type="application/rss+xml" />
	<link>https://nyanblog2222.com/tag/settimeout/</link>
	<description>ちょっとしたことを調べているよ</description>
	<lastBuildDate>Tue, 24 Aug 2021 23:45:13 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7</generator>

<image>
	<url>https://nyanblog2222.com/wp-content/uploads/2021/09/cropped-favicon-32x32.png</url>
	<title>setTimeout アーカイブ - nyanblog ~にゃんぶろぐ~</title>
	<link>https://nyanblog2222.com/tag/settimeout/</link>
	<width>32</width>
	<height>32</height>
</image> 
<atom:link rel="hub" href="https://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="https://pubsubhubbub.superfeedr.com"/><atom:link rel="hub" href="https://websubhub.com/hub"/>	<item>
		<title>【JQuery】遅延実行でイベントを発生させる方法</title>
		<link>https://nyanblog2222.com/programming/javascript/1620/</link>
					<comments>https://nyanblog2222.com/programming/javascript/1620/#respond</comments>
		
		<dc:creator><![CDATA[nyan2222]]></dc:creator>
		<pubDate>Thu, 02 Jul 2020 09:00:00 +0000</pubDate>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[clearInterval]]></category>
		<category><![CDATA[clearTimeout]]></category>
		<category><![CDATA[setInterval]]></category>
		<category><![CDATA[setTimeout]]></category>
		<guid isPermaLink="false">https://nyanblog2222.com/?p=1620</guid>

					<description><![CDATA[<p><img src="https://nyanblog2222.com/wp-content/uploads/2022/11/72.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" fetchpriority="high" srcset="https://nyanblog2222.com/wp-content/uploads/2022/11/72.png 1280w, https://nyanblog2222.com/wp-content/uploads/2022/11/72-300x157.png 300w, https://nyanblog2222.com/wp-content/uploads/2022/11/72-1024x536.png 1024w, https://nyanblog2222.com/wp-content/uploads/2022/11/72-768x402.png 768w" sizes="(max-width: 1280px) 100vw, 1280px" />こんにちは。今回は一定時間後に処理を実行することができる、遅延実行についてご紹介します。 目次 setTimeout・clearTimeout関数setInterval・clearInterval関数setTimeout [&#8230;]</p>
<p>投稿 <a href="https://nyanblog2222.com/programming/javascript/1620/">【JQuery】遅延実行でイベントを発生させる方法</a> は <a href="https://nyanblog2222.com">nyanblog ~にゃんぶろぐ~</a> に最初に表示されました。</p>
]]></description>
										<content:encoded><![CDATA[<img src="https://nyanblog2222.com/wp-content/uploads/2022/11/72.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" srcset="https://nyanblog2222.com/wp-content/uploads/2022/11/72.png 1280w, https://nyanblog2222.com/wp-content/uploads/2022/11/72-300x157.png 300w, https://nyanblog2222.com/wp-content/uploads/2022/11/72-1024x536.png 1024w, https://nyanblog2222.com/wp-content/uploads/2022/11/72-768x402.png 768w" sizes="(max-width: 1280px) 100vw, 1280px" />
<p>こんにちは。今回は一定時間後に処理を実行することができる、遅延実行についてご紹介します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">setTimeout・clearTimeout関数</a></li><li><a href="#toc2" tabindex="0">setInterval・clearInterval関数</a></li><li><a href="#toc3" tabindex="0">setTimeoutとsetIntervalの違い</a></li><li><a href="#toc4" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">setTimeout・clearTimeout関数</span></h2>



<p><strong><span style="color:#b78d4a" class="has-inline-color">setTimeout関数</span></strong>は一定時間後に処理を実行する時に使用する関数です。<br>JavaScriptでは、基本的に同期（上から順番に）処理していきますが、<strong><span style="color:#b78d4a" class="has-inline-color">明示的に時間をずらして実行したい場合、この関数を利用</span></strong>します。</p>



<p>こちらの例を見てみましょう。<br>この<strong><span style="color:#b78d4a" class="has-inline-color">スクリプトを実行すると、1秒後に</span></strong>コンソール画面に「実行するよ」と表示されます。</p>



<pre class="wp-block-code javascript"><code>setTimeout(function () {
    console.log("実行するよ");
}, 1000);</code></pre>



<p>また、このようにすると繰り返し処理を実行することもできます。</p>



<pre class="wp-block-code javascript"><code>var cnt = 0;
var countUp = function () {
    cnt++;
    console.log(cnt);
    var timeout = setTimeout(countUp, 1000);
}
countUp();</code></pre>



<p>繰り返しsetTimeout関数を使用すると、無限処理になってしまうので、それを止めるために<strong><span style="color:#b78d4a" class="has-inline-color">clearTimeout関数</span></strong>を使用します。</p>



<p><strong><span style="color:#b78d4a" class="has-inline-color">clearTimeout関数</span></strong>は、<strong><span style="color:#b78d4a" class="has-inline-color">setTimeout関数で宣言した処理を解除するための関数</span></strong>です。</p>



<pre class="wp-block-code javascript"><code>var cnt = 0;
var countUp = function () {
    cnt++;
    console.log(cnt);
    var timeout = setTimeout(countUp, 1000);

    if (cnt > 4) {
        clearTimeout(timeout);
    }
}
countUp();</code></pre>



<p>このように<strong><span style="color:#b78d4a" class="has-inline-color">clearTimeout関数</span></strong>を使用することで、指定の条件で<strong><span style="color:#b78d4a" class="has-inline-color">繰り返し処理を終了</span></strong>することができます。</p>



<h2 class="wp-block-heading"><span id="toc2">setInterval・clearInterval関数</span></h2>



<p>先ほど、setTimeout関数で繰り返しの遅延実行を行いましたが似たような関数でsetInterval関数があります。</p>



<p><strong><span style="color:#b78d4a" class="has-inline-color">setInterval関数</span></strong>は、<strong><span style="color:#b78d4a" class="has-inline-color">一定時間ごとに処理を実行</span></strong>することができます。</p>



<p>一方、<strong><span style="color:#b78d4a" class="has-inline-color">clearInterval関数</span></strong>は<strong><span style="color:#b78d4a" class="has-inline-color">setInterval関数で宣言した処理を解除する関数</span></strong>です。<br>こちらが使用例になります。<br>カウントが5になるまで実行し、超えると処理を止めるようにしています。</p>



<pre class="wp-block-code javascript"><code>var cnt = 0;
var countUp = function () {
    cnt++;
    console.log(cnt);
}
var interval = setInterval(function () {
    countUp();
    if (cnt > 4) {
        clearInterval(interval);
    }
}, 1000);</code></pre>



<h2 class="wp-block-heading"><span id="toc3">setTimeoutとsetIntervalの違い</span></h2>



<p>ぱっと見では、setTimeout関数とsetInterval関数の違いはなさそうですが、時間間隔に少し違いがあります。</p>



<p>・<strong><span style="color:#b78d4a" class="has-inline-color">setTimeout関数</span></strong>：<strong><span style="color:#b78d4a" class="has-inline-color">処理終了時点</span></strong>から次に実行するタイミングを指定</p>



<p>・<strong><span style="color:#b78d4a" class="has-inline-color">setInterval関数</span></strong>：<strong><span style="color:#b78d4a" class="has-inline-color">処理開始時点</span></strong>から何秒間隔で実行するかを指定</p>



<p>そのため、setInterval関数では、間隔の秒数を超過した処理が行われた場合、時間の感覚がずれる可能性があります。<br>用途に応じて、関数を使い分けるのがおすすめです。</p>



<h2 class="wp-block-heading"><span id="toc4">まとめ</span></h2>



<p><strong><span style="color:#b78d4a" class="has-inline-color">setTmeout関数</span></strong>では、<strong><span style="color:#b78d4a" class="has-inline-color">一定時間後</span></strong>に処理。<br><strong><span style="color:#b78d4a" class="has-inline-color">setInterval関数</span></strong>では、<strong><span style="color:#b78d4a" class="has-inline-color">一定時間毎</span></strong>に処理。</p>



<p>両者の違いは<strong><span style="color:#b78d4a" class="has-inline-color">間隔時間の開始時点</span></strong>が異なることをご紹介していきました。<br>遅延関数を使用したい場合、よく使う関数になると思いますので、参考にしてみてください。</p>



<p>良かったら次回の記事も見てみてくださいね！<br>それでは、本記事をご覧くださり、ありがとうございました。</p>
<p>投稿 <a href="https://nyanblog2222.com/programming/javascript/1620/">【JQuery】遅延実行でイベントを発生させる方法</a> は <a href="https://nyanblog2222.com">nyanblog ~にゃんぶろぐ~</a> に最初に表示されました。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nyanblog2222.com/programming/javascript/1620/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
