ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript を使用して特定の遅延後にスクリプトを実行し、変数値の変更を防ぐ方法

JavaScript を使用して特定の遅延後にスクリプトを実行し、変数値の変更を防ぐ方法

Susan Sarandon
リリース: 2024-10-31 22:38:02
オリジナル
727 人が閲覧しました

How to Execute Script After Specific Delay Using JavaScript and Prevent Variable Value Changes?

JavaScript を使用して特定の遅延後にスクリプトを実行

jQuery の "lay()" または "wait()" に類似した JavaScript メソッドを求める場合スクリプトの遅延実行を可能にする関数として、「setTimeout()」が信頼できるソリューションとして登場しました。

ただし、後でパラメーターを指定して関数を呼び出す場合は、匿名関数呼び出しを利用する必要があります。

名前の後の括弧を省略して、後で呼び出すための引数として関数を渡したくなりますが、このアプローチには注意点があります。

var a = "world";
setTimeout(alert("Hello" + a), 2000); // Displays "Hello world" immediately
ログイン後にコピー

遅延実行を確実にするには、次のいずれかを使用します。関数名 (Flubba で示されている) または匿名関数、特にパラメータを渡す場合:

var a = "world";
setTimeout(function() { alert("Hello" + a); }, 2000); // Displays "Hello world" after 2 seconds
ログイン後にコピー

ただし、この代替方法には制限があります。遅延中に変数が変更され、関数の出力が変更される可能性があります。元の変数値を保持するには、コールバック関数を使用します。

function callback(a) {
  return function() {
    alert("Hello" + a);
  }
}
var a = "world";
setTimeout(callback(a), 2000);
a = "Stack Overflow"; // This change won't affect the delayed function
ログイン後にコピー

コールバック関数内に元の変数値を組み込むことで、たとえ変更された場合でも、意図した値で遅延呼び出しが確実に行われるようになります。それまでの間。

以上がJavaScript を使用して特定の遅延後にスクリプトを実行し、変数値の変更を防ぐ方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート