0

Javascriptで配列をチェックし、配列の各要素をコンマで区切った後にエラーが発生しないことを確認するにはどうすればよいですか。たとえば、ユーザーは、1つのコンマではなく要素を区切る2つのコンマを続けて配列を作成できます。カンマだけでなく、その他の間違った入力。

var cars=["Saab",,"Volvo","BMW"]; // Here , this array has an error , there's a double comma .
var cars=["Saab",*"Volvo","BMW"]; // this array has an error , there's an asterix.
var cars=["Saab","Volvo","BMW"];  // this array is the right one.

これが間違った配列です

配列がチェックされ、その中にエラーがないことを確認するために使用できるJavascript関数またはソリューション..要素と区切りコンマのみで、間にスペースはありません。

あなたの助けをいただければ幸いです。

4

4 に答える 4

3

ユーザーが入力したデータを検証しようとしていることを考えると、アプローチを再評価することをお勧めします。

エンドユーザーに有効なJavaScript構文でデータを入力するように要求するべきではありません。これはユーザーにとって迷惑です。

代わりに、テキストエリアと手順があります。

モックアップ

これは人間にとってはるかに扱いやすく、構文解析は非常に簡単です。

var cars = document.getElementById('carstextarea').value.split('\n');
// => ["Saab","Volvo","BMW"]
于 2013-03-25T18:11:15.983 に答える
1

JSLintJSHintなどの静的コードアナライザーを使用します。

後者は、Webでホストされるフレーバーに加えてJavaScriptライブラリとして利用できます。

于 2013-03-25T17:39:12.320 に答える
0

jslintを使用してJavaScriptソースを取得し、スキャンします。

Visual Studio、NetBeans、またはEclipseには、そのためのプラグインがあります。

幸運を!!!

于 2013-03-25T17:45:57.547 に答える
0

が含まれている2番目carsの例*はコンパイルされません。

二重コンマをチェックするには、配列を反復処理して、未定義の値をチェックします。

for(var i = 0; i<cars.length; i++) {
if(cars[i] === undefined) {
// do something
}
}

または、配列を生成する前にこれをキャッチしてみることもできます。ユーザーが入力した空の行を確認する方法はありますか?

于 2013-03-25T17:53:05.403 に答える