2

JSNewbはこちら。

私は関数を使用していますが、その関数のドキュメントには、「関数の引数はJavaScriptハッシュである必要があります。ここで、キーはフィルタリングされる(データベース)フィールドであり、値は文字列または配列のいずれかです。文字列」。

私のために働く例:

//New York Knicks fan....
viz.filter({CitiesILoathe: ['Boston']});
viz.filter({CitiesILoathe: ['Boston','Miami']});

これらのスニペットのいずれかが私のために機能し、filter()が完了した後に表示されるものから上記の都市を削除します。

ここで、以前に作成/入力したハッシュを直接渡したいと思います。

方法がわかりません。

私はもう試した:

var CitiesILoathe= new Object(); //my "hash"
CitiesILoathe['Boston'] = 1;
CitiesILoathe['Miami'] = 2;
viz.filter({CitiesILoathe}); // also tried same thing w/o curly braces

...しかし喜びはありません。私はドキュメントを検索してきましたが、JavaScriptの語彙/インテリジェンスはこの時点では遅いので、何を探しているのか本当にわかりません。

誰かが私に正しい方向へのプッシュを与えることができますか?どうもありがとう!

4

3 に答える 3

2
//inline declaration
var CitiesILoath = {
    "CitiesILoath": [
        "Boston"
        ,"Miami"
    ]
}
viz.filter(CitiesILoath)

//ad-hoc
var myFilter = {}; //same as "new Object()"
myFilter["CitiesILoath"] = []; //same as "new Array()"
myFilter["CitiesILoath"].push("Boston"); //append to array
myFilter["CitiesILoath"].push("Miami"); //append to array

//or, use decimal notation
var myFilter = {}; //same as "new Object()"
myFilter.CitiesILoath = []; //same as "new Array()"
myFilter.CitiesILoath.push("Bostom"); //append to array
myFilter.CitiesILoath.push("Miami"); //append to array
viz.filter(myFilter)

「ハッシュ」はオブジェクト自体です。「キー」はフィールドで、この場合は「CitiesILoath」であり、これらのキーの値は文字列で満たされた配列です。

于 2012-04-12T19:30:44.887 に答える
1

と呼ばれる1つのプロパティを持つオブジェクト(名前は関係ないので、xと呼びます)が必要CitiesILoatheです。そのプロパティは配列であるため、pushを使用して追加できます。

var x = {CitiesILoathe: []};
x.CitiesILoathe.push('Boston');
x.CitiesILoathe.push('Miami');
viz.filter(x);

次のようにすることもできます。

var CitiesILoathe = [];
CitiesILoathe.push('Boston');
CitiesILoathe.push('Miami');
viz.filter({CitiesILoathe: CitiesILoathe});
于 2012-04-12T19:27:27.690 に答える
1
var x= { "CitiesILoathe" : [
    "Boston",
    "Miami"
] };
viz.filter(x);
于 2012-04-12T19:25:33.623 に答える