1

コンマで区切られた文字列値を持つ JavaScript 変数があります。value1,value2,value3, ......,valueX,

この変数の値を JSON オブジェクトに変換する必要があります。次に、このオブジェクトを使用して、ユーザーの入力したテキスト値と一致させます。filterObj.hasOwnProperty(search)

これを整理するのを手伝ってください。

4

4 に答える 4

3

あなたが望んでいるように見えるのは、文字列から、マップとして機能する JavaScript オブジェクトを構築して、内部の値を効率的にテストできるようにすることです。

あなたはこのようにすることができます:

var str = 'value1,value2,value3,valueX';
var map = {};
var tokens = str.split(',');
for (var i=tokens.length; i--;) map[tokens[i]]=true;

次に、次のように値が存在するかどうかをテストできます。

if (map[someWord]) {
    // yes it's present
}
于 2013-03-27T08:24:46.640 に答える
2

JSON を使用する理由 で配列に変換できますsplit(",")

var csv = 'value1,value2,value3';
var array = csv.split(",");
console.log(array); // ["value1", "value2", "value3"]

でアクセスするとarray[i]、仕事をするはずです。

for (var i = 0; i < array.length; i++) {
    // do anything you want with array[i]
}

JSON はデータ交換に使用されます。他の言語と通信したり、何らかのデータを渡したりする場合を除き、単一ページで JavaScript を使用して処理する場合、JSON は必要ありません。

于 2013-03-27T08:14:53.573 に答える
-1

JSON 形式には、キーと値のペアの (単一または多次元) リストが必要です。コンマ区切りのリストを JSON 形式に変換することはできません。割り当てるキーが必要です。

例、

[
  {"key":"value1"},
  {"key":"value2"},
  {"key":"value3"},
  ...
  {"key":"valueX"}
]

あなたの要件のために、配列を使用できると思います。

于 2013-03-27T09:19:13.073 に答える