ユーザーが n 要素の行を持つ小さな Web アプリをコーディングしています。ユーザーは、独自の基準に従って、各要素を true/false に切り替える必要があります。
ユーザーが要素を切り替えるたびに、切り替えられた要素が含まれている可能性のある真の要素の「チェーン」の長さを確認する必要があります。例:
0 0 0 0 1 0 1 1 1 ? //if user selects '1', the chain length is 4
0 ? 1 1 0 1 1 0 0 0 //if user selects '1', the chain length is 3
0 0 1 1 1 ? 1 1 0 0 //if user selects '1', the chain length is 6
これを行う最善の方法を考えています。
すべての要素は、JSON オブジェクトと DOM オブジェクト (s など) の両方で表現されます<div>
。
1 つのオプションは、クリックするたびに配列全体を単純に実行することです。要素の最大数は約 1000 になるため、これで問題ありません。しかし、これは最も効率的な方法ではないようです。
別のオプションは、クリックされた要素を取得し、false 要素に到達するまで、追加の true 要素をそれぞれカウントしながら後退することです。次に、クリックした要素から同じことを行います。これは私には良いように思えますが、不必要な面倒かもしれません。
この問題に最も適した方法を判断するのに助けが必要です。要因は(驚くべきことではありませんが)-
- パフォーマンス - クライアント側で遅延が発生してはなりません - チェーンの長さは即座に決定される必要があります。
- 保守性。
この質問は少し主観的に思えるかもしれませんが、おそらくそうかもしれませんが、これは私が気付いていないおなじみの解決策を持つおなじみの問題であるに違いないと考えました。
私はjQueryを使用します。