ホームページ ウェブフロントエンド jsチュートリアル jsタイマーsetTimeoutはローカル変数を呼び出すことができません。

jsタイマーsetTimeoutはローカル変数を呼び出すことができません。

May 16, 2016 pm 05:11 PM
settimeout ローカル変数

JavaScript でのタイマー setTimeout の使用法は、一般に次のとおりです。beginrotate を呼び出した後、次のコードに示すように、rotateloop を定期的に実行するプロセスに入ります。 🎜>

コードは次のとおりです: var angle = 0; functionrotateloop() { if (angle < 360) {
角度 ;
// 角度
//....
setTimeout("rotateloop()", 100);

function beginrotate() {
/ /何かをします
//....
setTimeout("rotateloop()", 100)

このコードには問題があります。つまり、グローバル変数 angle は明らかに良いプログラミング習慣ではありません。そのため、インライン関数を使用することを考え、コードを次のように変更しました:




コードをコピー


コードは次のとおりです。


function beginrotate() {
var angle = 0; >関数rotateloop() { if (角度角度 ; //角度//....
setTimeout("rotateloop) ()", 100);
}
}
//何かをする
//...
setTimeout("rotateloop()", 100);
}


このように変更されました。その後、JavaScript がエラーを報告し、setTimeout がローカルの組み込み関数rotateloop を見つけられなかったことがわかりました。この問題は、コードを少し変更することで解決できます。




コードをコピー


コードは次のとおりです。

function beginrotate() {
var angle = 0; 関数rotateloop () { if (角度 角度 // ...... setTimeout(rotateloop, 100);
}
}
//何かをします
//...
setTimeout(rotateloop, 100); 🎜>}


setTimeout だけ 最初のパラメータを文字列ではなく関数オブジェクトに変更するだけです。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

C++ 関数のローカル変数とグローバル変数の違いは何ですか? C++ 関数のローカル変数とグローバル変数の違いは何ですか? Apr 19, 2024 pm 03:42 PM

C++ ローカル変数とグローバル変数の違い: 可視性: ローカル変数は定義関数に限定されますが、グローバル変数はプログラム全体で参照できます。メモリ割り当て: ローカル変数はスタックに割り当てられ、グローバル変数はグローバル データ領域に割り当てられます。スコープ: ローカル変数は関数内にあり、グローバル変数はプログラム全体にあります。初期化: ローカル変数は関数の呼び出し時に初期化され、グローバル変数はプログラムの開始時に初期化されます。再作成: ローカル変数は関数呼び出しごとに再作成されますが、グローバル変数はプログラムの開始時にのみ作成されます。

settimeout と setinterval の違いは何ですか settimeout と setinterval の違いは何ですか Aug 15, 2023 pm 02:06 PM

settimeout と setInterval の違い: 1. トリガー時間、settimeout は 1 回限りで、遅延時間を設定した後に関数を 1 回実行しますが、setinterval は反復的で、設定された時間間隔で関数を繰り返し実行します; 2. 実行時間、settimeoutは一度だけ実行され、setintervalはキャンセルされるまで繰り返し実行されます。

C++ 構文エラー: 関数がポインターまたは参照を返す場合、ローカル変数または一時オブジェクトを返すことはできません。どうすればよいですか? C++ 構文エラー: 関数がポインターまたは参照を返す場合、ローカル変数または一時オブジェクトを返すことはできません。どうすればよいですか? Aug 22, 2023 am 09:22 AM

C++ はオブジェクト指向プログラミング言語であり、その柔軟性と能力はプログラマーに大きな助けとなることがよくあります。しかし、その柔軟性ゆえに、プログラミング時にさまざまな小さなエラーを避けることは困難です。最もよくある間違いの 1 つは、関数がポインターまたは参照を返すときに、ローカル変数または一時オブジェクトを返すことができないことです。では、この問題にどう対処すればよいのでしょうか?この記事ではその内容を詳しく紹介していきます。この問題の原因は、C++ 言語では、関数の実行中にローカル変数と一時オブジェクトが動的に割り当てられることです。関数が終了すると、これらのローカル変数と一時変数は

Golang関数のグローバル変数とローカル変数のデータ競合分析 Golang関数のグローバル変数とローカル変数のデータ競合分析 May 21, 2023 am 08:19 AM

Golang は、効率性、シンプルさ、同時実行性などの特徴を備えた強力に型指定されたプログラミング言語であるため、徐々に多くの開発者に好まれています。 Golang の開発では、関数のグローバル変数とローカル変数がデータ競合の問題を引き起こすことがよくあります。この記事では、Golang関数におけるグローバル変数とローカル変数のデータ競合問題を実際のコーディングの観点から分析していきます。 1. グローバル変数のデータ競合 Golang のグローバル変数はすべての関数でアクセスできるため、厳密な設計とコーディングを行わないと

Java 10 でのローカル変数の型推論: foreach ループで var キーワードを使用する方法 Java 10 でのローカル変数の型推論: foreach ループで var キーワードを使用する方法 Jul 29, 2023 pm 03:21 PM

Java10 でのローカル変数の型推論: foreach ループで var キーワードを使用する方法 はじめに: Java10 は Java9 以降の重要なバージョンであり、多くの新機能と改善点が導入されています。非常に期待されている機能の 1 つは、ローカル変数の型推論です。 Java10 では、var キーワードを使用してローカル変数を宣言し、右側の式に基づいてコンパイラーに変数の型を自動的に推測させることができます。この記事では、その使用方法について説明します。

Java 10 でのローカル変数の型推論: var キーワードを使用してコードを簡素化する方法 Java 10 でのローカル変数の型推論: var キーワードを使用してコードを簡素化する方法 Jul 29, 2023 pm 07:32 PM

Java10 のローカル変数の型推論: var キーワードを使用してコードを簡略化する方法 はじめに: Java10 では、ローカル変数の型推論の機能が導入され、var キーワードを使用することでコードの記述プロセスを簡略化できます。この記事では、var キーワードの使用法を紹介し、サンプル コードを通じてコードを簡素化する効果を示します。 1. ローカル変数の型推論とは何ですか?ローカル変数の型推論とは、ローカル変数を宣言するときに、明示的な型宣言の代わりに var キーワードを使用できることを意味します。コンパイラは次のように表現します

Javaのローカル変数のデフォルト値は何ですか? Javaのローカル変数のデフォルト値は何ですか? Aug 20, 2023 pm 09:41 PM

ローカル変数は、Java のメソッド、コードブロック、コンストラクターなど内で宣言できます。ローカル変数は、プログラム コントロールがメソッド、コード ブロック、コンストラクターなどに入るときに作成され、プログラム コントロールがメソッド、コード ブロック、コンストラクターなどを離れるときに破棄されます。 Java では、ローカル変数にはデフォルト値がありません。これは、変数が初めて使用される前に変数を宣言して割り当てることができることを意味します。そうでないと、コンパイラによってエラーがスローされます。例 publicclassLocalVariableTest{ publicvoidprint(){ &am

Java 10 でのローカル変数の型推論: ラムダ式で var キーワードを使用する方法 Java 10 でのローカル変数の型推論: ラムダ式で var キーワードを使用する方法 Aug 02, 2023 pm 04:25 PM

Java10 でのローカル変数の型推論: ラムダ式で var キーワードを使用する方法 はじめに: Java10 では、ローカル変数の型推論の新機能が導入され、宣言時に var キーワードを使用してローカル変数の型を推論できるようになります。ほとんどの場合、この機能は必要ありませんが、場合によっては、コードの読みやすさと単純さを向上させることができます。この記事では、ラムダ式で var キーワードを使用してローカル変数の型推論を実装する方法に焦点を当てます。

See all articles