問題タブ [jslint]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - JSLintを使用してそれに従うことは意味がありますか?
最近、jQuery と JavaScript をそのまま使用して JS コードを書いていて、JSLint を試してみようと思いました。コードにはさまざまな関数と jQuery の使用法が含まれており、IE8 と最新の Firefox で (エラーなしで) 正常に動作するとしましょう。このコードは、XHTML 1.0 Transitional としても検証されます (Strict も同様ですが、主に Transitional として有効にしたいと考えています)。
ただし、JSLint を使用すると、すべてが間違っているように見えます。非常に厳格であると読んだことがありますが、「The Good Parts」だけをオンにしても、通常の HTML ページでは 70 以上のエラーが発生します。
それはこれから始まります (なぜ世界で、ドキュメントの XHTML を無効にするためにタイプを削除したいのですか??)
次のような難解なエラーが続きます
これらのエラーに対する回答、特に JSLint に jQuery を認識させて理解させる方法を誰かが教えてくれれば、感謝します。
そうでない場合は、使用するかどうか、使用するようにアドバイスするかどうかを説明してください。
アップデート:
他の回答がある場合は、もう 1 日待ちます。その後、賛成票が最も多い回答を受け入れます。
javascript - この正規表現で JSLint を満足させる方法はありますか?
JSLint を使用して JavaScript を実行すると、同じコード行から次の 2 つのエラーが発生します。
JSLintが「慎重すぎる」可能性があることを理解しています。同様の質問、Purpose of JSLint "disallow insecure in regex" optionに関するコメントを読みました。
それにもかかわらず、私はすべての世界で最高のものを持ち、JSLint が文句を言わない動作する正規表現を持ちたいと思っています。
しかし、私は正規表現で失敗します。
少なくとも 1 つの特殊文字の存在を探すが、JSLint が文句を言わない正規表現を作成することは可能ですか?
javascript - この正規表現内の文字をエスケープするにはどうすればよいですか?
メールアドレスを検証するこの機能があります。jsLintは、一部の文字がエスケープされていないことを示す正規表現でエラーを出します。
それらを正しくエスケープする方法はありますか?
javascript - JSLint の苦情を修正しようとすると、未定義の jQuery 値:「ループ内で関数を作成しないでください」
jQuery ajax関数内で、成功時にコールバック関数に提供されるデータは次のように定義されます
しかし、これはJSLintを不幸にします(「ループ内で関数を作成しないでください」)。
jslintエラーを修正する方法の提案に従えば、「ループ内で関数を作成しないでください。」? 、Firebug は「データが定義されていません」と文句を言い、コールバック関数は失敗します。
例:
先立って$(document).ready(function(){
内部$(document).ready(function(){
「データが定義されていません」というエラーが発生します。
しかし、私がそれを
その後、すべてが面倒です-しかし、JSLintに関する限り、私は出発点に戻りました。
JSLint を使用して muster を渡したい場合、returned data
byを取得url
して問題の関数に渡すにはどうすればよいですか?
javascript - JSLintがHTMLイベントハンドラーの使用を制限するのはなぜですか?
JSLintのデフォルトの「GoodParts」を使用すると、HTMLイベントハンドラー(onclickなど)の使用は許可されません。
この背後にあるロジックは何ですか?避けるべきそれらの悪い点は何ですか?
javascript - javascriptで新しいグローバル関数を定義する方法
クロージャに関係しているときに関数をグローバルにしようとすると問題が発生します。window
以下にリストされているコードには、呼び出された、の新しい関数を定義する匿名のメソッドがありますgetNameField
。
これはブラウザではうまく機能しますが、「未定義の変数を許可しない」をオンにしてJSLint.comでコードを実行すると、エラーが発生します。
17行目の7文字目の問題:'
getNameField
'が定義されていません。
JSLintがこの関数をグローバルと見なす必要があることを実際に理解できるように、これを修正するのを手伝ってもらえますか?
javascript - JQueryに依存するコードのセグメントにJSLintを使用するにはどうすればよいですか?
私はJavascriptに比較的慣れていないので、週末にJSLintで遊んでいたコードを実行して、自分が完全に馬鹿だった場所を指摘できるようにしたいと思います:)
残念ながら、JQueryjavascriptライブラリとそのためのさまざまなプラグインの一部である関数宣言の欠落について多くのエラーが発生します。
JSLintを介してそのようなコードを実行する方法はありますか?
javascript - JSlintエラー'ループ内で関数を作成しないでください。' Javascript自体についての質問につながります
この疑似例のように、ループ内で無名関数を呼び出すコードがいくつかあります。
JSLintは、「ループ内で関数を作成しないでください」というエラーを報告します。コードJSLintをクリーンに保つのが好きです。匿名関数をループの外に移動して、名前付き関数として呼び出すことができることはわかっています。それはさておき、ここに私の質問があります:
Javascriptインタープリターは、実際に反復ごとに関数のインスタンスを作成しますか?または、実際には「コンパイル」された関数インスタンスが1つだけで、同じコードが繰り返し実行されるのでしょうか。つまり、関数をループの外に移動するJSLintの「提案」は、実際にコードの効率に影響を与えますか?
javascript - ループ内のいたずらなJSLint-shy関数defをどのように置き換える必要がありますか?
"Don't make functions within a loop."
JSLintからいくつかのエラーが発生しますが、この問題を修正する方法について、きちんとした提案がありますか?
おそらく、私のYAHOOの依存関係(yd.
下記)のために、私のいたずらは許されますか?私が次のことをしたのは、私が安全に言えることです。
...一連の要素内にネストされた一連の要素に対して操作を実行する必要がある場合、これは自然なことのように思えます。JSLintが私の気持ちを傷つけたので、アプリに速度の低下などは見つかりませんでした:)
javascript - evalは邪悪な問題です
JSlintを使用してJavaScriptを検証します。
evalは悪だというエラーが表示されます。なぜこれがあり、私が使用できる代替手段がありますか?
これは、私がevalを使用していて、その回避策が必要な場合の例です。
私はこのような配列を持っています:
1、2、3、または4のいずれかの数値を返す関数(functionResult)があります。したがって、次のコード行で実行したいのは、関数の結果でメッセージが終了する配列内のリソースを取得することです。 。
evalを削除して他のものに置き換える方法はありますか?