Google PlaceService textSearch()とnearbySearch()の違い

2020年6月11日グーグル

Google Map系のAPI「PlaceService」で、textSearch()とnearbySearch()というメソッドがあります

どちらも指定したエリア内の施設を検索できる機能です

textSearch()はqueryというリクエストで単語を指定します

例えば「レストラン」とか

一方でnearbySearch()でもkeywordというリクエストで同様の機能があります

しかしこれらには公式ドキュメントにも載っていない違いがあります

それはtextSearch()は複数の単語をスペースで区切って指定できるのに対して、

nearbySearch()はできない、という事です

だから、例えばtextSearch()はこういう使い方ができます

// 周辺のお風呂を検索したい!
var request = {
    location: new google.maps.LatLng(lat, lng),
    radius: 10000,
    query:'銭湯 温泉'
};
 
var service = new google.maps.places.PlacesService(map);
service.textSearch(request, Result_Places);

「銭湯」という単体のキーワードだと、「○○温泉」という施設が検索に引っかかりません

反対に「温泉」というキーワードだけだと「○○銭湯」が見つかりません

nearbySearch()はキーワードが1つしか指定できないのでどちらかの施設しか検索できません

けどtextSearch()ならできます

意外とキーワードから施設を検索する時って、幅を持った範囲を探したいのでこういう複数単語検索ができるtextSearch()は重要です

なお、検証はしてませんがリクエストパラメータで「query」と指定できる関数はほぼ同じように機能すると予想されます

例えば、findPlaceFromQuery()とかですね

エンジニアの年収を上げる方法

フリーランスエンジニアで年収を大幅アップしませんか?
実際に僕は会社員からフリーランスエンジニアになって年収が87万円アップしました

今なら相談(ヒアリング)するだけで3,000円分のamazonギフト券がもらえます!
初めての案件契約で最大10万円分の準備金がもらえます
非公開の高単価案件(100万円超え)が多数あります

詳しくはこちら