JSHintは、メソッドが使用される前に定義されていないと、メソッドが認識されないと言っています。
すべてのメソッドを順番に再配置することはできますが、メソッドを「前方宣言」することで警告を回避する方法があることを望んでいます。
正しい名前が何であるかはよくわかりませんが、これらの関数がコードのさらに下に存在することをインタープリターに知らせてほしいと思います。
ここに完全なレポート-http ://www.jshint.com/reports/67008
ありがとう
JSHintは、メソッドが使用される前に定義されていないと、メソッドが認識されないと言っています。
すべてのメソッドを順番に再配置することはできますが、メソッドを「前方宣言」することで警告を回避する方法があることを望んでいます。
正しい名前が何であるかはよくわかりませんが、これらの関数がコードのさらに下に存在することをインタープリターに知らせてほしいと思います。
ここに完全なレポート-http ://www.jshint.com/reports/67008
ありがとう
これらの関数がコードのさらに下に存在することをインタープリターに知ってもらいたいのです。
インタープリターは、これらの関数がコードのさらに下に存在することを認識しています。コードは問題なく実行されるはずです。気に入らないのはjshintだけです。
便利で意味のある順序で関数を宣言しても問題はありません。たとえば、関連する関数を互いに近くで宣言するのが普通です (そして便利です)。個人的には、スクリプトの先頭でページ初期化タイプの関数を宣言すると便利だと思いますが、後で宣言される他の関数を呼び出すことは避けられません。
コードに何らかの「事前宣言」を導入すると、コードの読み取りと保守が難しくなると思います。明らかに、事前宣言と実際の宣言を一致させる必要があるためです。コード内で離れて配置されます。翌週戻ってきて関数を変更するときは、コードの両方の部分を更新することを忘れないでください。つまり、矛盾やバグが発生する可能性が高くなります。
したがって、jshint の目的はコードの信頼性を高めることであるとすると、長期的にはコードの信頼性が低下するとしても、jshint を渡すためだけに人為的な構造を追加したくないことは確かです。
その警告を回避するために考慮すべき唯一の再構築は、関数の順序を変更することですが、私の意見では、この場合は警告を無視する方がよいでしょう。(警告をオフにするオプションはありますか?)
できることは set だけだと思いますがundef:false
、これは他の問題につながります。
関数を含むファイルがそれらを呼び出すコードの前にロードされるという前提で、それを無視するか、再構築するか、実行する必要があるかもしれません。