入力フィールドからすべてのキーストロークを収集し、それぞれの間に設定された時間遅延で1つずつ関数に渡すオブジェクトのようなバッファを作成しようとしています。
たとえば、 を使用するGoogle Maps/Places Autocomplete Service API
と、入力フィールドでキーストロークが行われるたびにオートコンプリートのリクエスト関数が起動されます。非常に短い時間内にあまりにも多くのキーストロークが行われると、オートコンプリート リクエストが結果を返さないことがわかりました。したがって、すべてのキーストロークを収集するある種のバッファを作成し、次に a で 1 つずつ、200ms interval
それらをオートコンプリート機能に解放したいと考えています。
したがって、123 Fake St の入力に 700 ミリ秒かかり、文字列の各文字を 200 ミリ秒間隔で関数に渡します - 1 (200ms) 2 (200ms) 3 (200ms) F (200ms) A ... ect.
現在、そのようなことを書く方法についての確固たるアイデアがないため、コードを投稿することはできませんが、次のようなものになると思いました
On key press:
if( (lastRequestTime - 200) > curTime )
send input to function
ただし、これは明らかに完全にはほど遠いものです。これがどのように達成されるかについて誰か考えがありますか?