0

くだらないタイトルでごめんなさい。

名前をキーとして、このように作成するマーカーのオブジェクトが1つあります

markers[name] = {};
markers[name].id = id;
markers[name].lat = lati;
markers[name].lng = longi;
markers[name].state = state;
markers[name].position = posi;
markers[name].selected = false;

fencesCookie次に、空の場合とそうでない場合があるオブジェクトの配列が呼び出されます。

空でないときは、このように表示されます。

    [
    Object
    contact: "Vince Test"
    lat: 40.758577
    lng: -73.984464
    radius: 100
    __proto__: Object
    , 
    Object
    contact: "Vince WF"
    lat: 35.86166
    lng: 104.19539699999996
    radius: 300
    __proto__: Object
    ]

現時点では、このように、マーカー オブジェクト キーごとに選択ボックスを作成します。

for (var key in markers) { // loop through markers and append the selectbox
    appendContactList(key);
}

キー(マーカー名)がfencesCookie.contactエントリの1つと一致する場合、それを選択ボックスに追加しないように編集したい。

乾杯

4

2 に答える 2

2

オブジェクト/配列構造を正しく理解しているかどうかはわかりませんが、次のコードでアイデアが得られると思います。

markerloop: for (var key in markers) {
    for (var i=0; i<fencesCookie.length; i++)
        if (fencesCookie[i].id == key)
// or is it fencesCookie[i].contact == markers[key].id ?
             continue markerloop;
    // else the key was not found
    appendContactList(key); // append the selectbox
}
于 2012-10-11T15:19:52.273 に答える
2

このようなもの?

for (var key in markers) { // loop through markers and append the selectbox
    var test = true;
    for(var i=0, len=fencesCookie.length;i<len;i++){
        if(key==fencesCookie[i].contact) {
            test=false;
            break;
        }
    }
    if(test) appendContactList(key);
}
于 2012-10-11T15:22:40.603 に答える