2016-09-02 2 views
0

私はGoogle Maps JS APIを使用していますが、私はジオロケーション機能とプレイスライブラリを使用しています。これはちょうど地理位置が計算され、その後近くの醸造所を検索するコードが最後の24時間に発生し始めました。私はそれだけではなく、多くのランダムなものを取得します。マクドナルドは私が最後にチェックしたビールを提供していない!私は後ろを振り返り、これを管理するコードに変更を加えていないので、何が起こっているのか頭を傷つけています。Googleプレイスの詳細フィルタリングの結果

Googleには「醸造所」はありませんので、私はキーワードプロパティを使用しており、検索する値は「醸造所」です。私は私の街の実際の醸造所がその名前のどちらかを使用しているので、 '醸造所' & '醸造'を探してみました。この戦術は実際に事態を悪化させた。私は実際の醸造所とtype[]の特性の間に相関関係を見出そうとしましたが、運はありませんでした。 typeプロパティのほとんどの要素は、bar、restaurant、establishment、point-of-interestとして戻ります。

私は知りたいことがあります:「River City Brewing Co.」という文字列を取る方法はありますか?特定の文字列値 'brewery'と 'brewing'を検索します。私は地元の醸造所の検索結果を検索する際に、自分のコード(ほとんどの場合)またはGoogleが酔っているので、結果をフィルタリングする方法を見つけようとしています。

ので、コードは賢明な私のような何かをしようとしてやりたいと思います:

function filter(search_results) 
{ 
    if(brewery_data.name ??? 'brewery' || 'brewing') 
    { 
     // send to results 
     return true; 
    { 
    else 
    { 
     // reject 
     return false; 
    } 
} 

は、誰もがそれを行う方法上の任意の提案やアイデアを持っていますか?レビューのために私のGHページにコードへのリンクを残しました。 Maps.jsには現在すべてのマッピング機能が含まれており、app.jsはメインのスクリプトです。他のものはすべて現在の種類のストレージであり、index.htmlでは呼び出されません。私は本当にこのバグを打ち負かす方法について私に悩まされているので、助けに感謝します。私はこれを引き起こしているGoogleのコードで何かを逃した場合は、私はそれを修正するだろうが、最終的に私のアプリケーションが正常に動作し、ビッグマックのためのMcDonaldsに私のユーザーを送信しないように結果をフィルタリングする方法を見つける必要がありますIPA!

コード: https://github.com/rockchalkwushock/Bro2Brew_App/tree/staging Webアプリケーション: https://rockchalkwushock.github.io/Bro2Brew_App/

答えて

1

は私がキーワードに返すように多くの型破りな結果になった理由を把握することはなかった:「醸造所」を、私はtoString.prototype.includes()で結果をフィルタリングする方法を見つけました。あなたは私がそれをどのように使ったかを見ることができます。誰かがフィルタリングに関するより良い方法を持っている場合、または私がキーワードのプロパティから離れている結果を戻していた理由を知っている場合は、お気軽に共有してください!

function callbackResults(results, status) 
{ 
    if (status == google.maps.places.PlacesServiceStatus.OK) 
    { 
    for (var i = 0; i < results.length; i++) 
    { 
     var place = results[i]; 
     var placeid = place.place_id; 
     var name = place.name; 

     if (name.includes("Brewery") || name.includes("Brewing")) 
     { 
     // console.log(name); 
     apiMarkerCreate(place.geometry.location, place); 
     addPlaceDetails(placeid); 
     } 
    } 
    return true; 
    } 
    else 
    { 
     return false; 
    } 
} 
+0

は '.INCLUDES()'メソッドはMDN https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference経由でIEやOperaのブラウザでは、現在サポートされていないことを追加するのを忘れ/ Global_Objects/String/includes – rockchalkwushock

関連する問題