地點欄位遷移 (open_now、utc_offset)
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
地點欄位 opening_hours.open_now
和 utc_offset
已於 2019 年 11 月 20 日淘汰,並於 2021 年 2 月 20 日停用。請注意,只有 Maps JavaScript API 的 Places Library 淘汰了這些欄位。本指南說明如何更新程式碼,以停止使用這些欄位。
opening_hours.open_now
欄位
本節說明如何更新這項功能,因應各個類型的地點要求。
Place Details 要求
opening_hours.open_now
欄位會替換為 opening_hours.isOpen()
方法。
針對 Place Details 要求,請在 fields
要求參數中加入 opening_hours
和 utc_offset_minutes
,而非在 fields
要求參數中要求 opening_hours.open_now
,然後針對傳回的 google.maps.places.PlaceResult
物件呼叫 opening_hours.isOpen()
方法,以檢查地點是否營業。以下範例顯示用於判斷地點是否營業的 Place Details 要求:
new google.maps.places.PlacesService(attrContainer).getDetails({
placeId: '...',
fields: ['opening_hours','utc_offset_minutes'],
}, function (place, status) {
if (status !== 'OK') return; // something went wrong
const isOpenAtTime = place.opening_hours.isOpen(new Date('December 17, 2020 03:24:00'));
if (isOpenAtTime) {
// We know it's open.
}
const isOpenNow = place.opening_hours.isOpen();
if (isOpenNow) {
// We know it's open.
}
});
Find Place 要求
對於 Find Place 要求,opening_hours.open_now
欄位沒有取代項目。建議您發出 Place Details 要求以取得 opening_hours
資訊。
Nearby Search 與 Text Search 要求
對於 Nearby Search 與 Text Search 要求,您可以使用 openNow
要求參數,該參數的作用是篩選結果,使結果只包含目前營業的地點。
openNow:false
會傳回所有地點。
openNow:true
僅會傳回目前營業的地點。
如要列出所有地點並標示 openNow
狀態,請先使用 openNow:false
發出要求以取得所有地點,然後使用 openNow:true
發出要求,僅取得營業中的地點,然後合併回應。
utc_offset
欄位
在 Place Details 要求中,utc_offset
欄位會由 utc_offset_minutes
欄位取代。只要在 fields
要求參數中以及從 PlaceResult
讀取這項資訊時,將原本顯示的 utc_offset
替換為 utc_offset_minutes
即可。
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-08-27 (世界標準時間)。
[null,null,["上次更新時間:2025-08-27 (世界標準時間)。"],[[["\u003cp\u003eThe Places fields \u003ccode\u003eopening_hours.open_now\u003c/code\u003e and \u003ccode\u003eutc_offset\u003c/code\u003e are deprecated and will be turned off on February 20, 2021 in the Places Library, Maps JavaScript API.\u003c/p\u003e\n"],["\u003cp\u003eFor Place Details requests, use the \u003ccode\u003eopening_hours.isOpen()\u003c/code\u003e method and include \u003ccode\u003eopening_hours\u003c/code\u003e and \u003ccode\u003eutc_offset_minutes\u003c/code\u003e in the \u003ccode\u003efields\u003c/code\u003e request parameter instead of \u003ccode\u003eopening_hours.open_now\u003c/code\u003e and \u003ccode\u003eutc_offset\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eFor Find Place requests, it is recommended to make a Place Details request to get \u003ccode\u003eopening_hours\u003c/code\u003e information.\u003c/p\u003e\n"],["\u003cp\u003eFor Nearby Search and Text Search requests, use the \u003ccode\u003eopenNow\u003c/code\u003e request parameter to filter results based on open/closed status.\u003c/p\u003e\n"],["\u003cp\u003eReplace \u003ccode\u003eutc_offset\u003c/code\u003e with \u003ccode\u003eutc_offset_minutes\u003c/code\u003e in Place Details requests for the UTC offset information.\u003c/p\u003e\n"]]],[],null,["# Place Field Migration (open_now, utc_offset)\n\n\u003cbr /\u003e\n\nThe Places fields `opening_hours.open_now` and `utc_offset` are deprecated as\nof November 20, 2019, and will be turned off on\nFebruary 20, 2021. These fields are deprecated ONLY in the\nPlaces Library, Maps JavaScript API. This guide shows you how to update your code to\nstop using these fields.\n\n`opening_hours.open_now` field\n------------------------------\n\nThis section shows how to update this functionality for each type of Places\nrequest.\n\n### Place Details requests\n\nThe `opening_hours.open_now` field is replaced by the\n[`opening_hours.isOpen()`](/maps/documentation/javascript/reference/places-service#PlaceOpeningHours)\nmethod. \n\nFor [Place Details requests](/maps/documentation/javascript/places#place_details_requests),\ninstead of requesting `opening_hours.open_now` in the `fields` request\nparameter, include `opening_hours` and `utc_offset_minutes` in the `fields`\nrequest parameter, then call the `opening_hours.isOpen()` method on the returned\n`google.maps.places.PlaceResult` object to check whether the place is open. The\nfollowing example shows a Place Details request that determines whether a place\nis open: \n\n new google.maps.places.PlacesService(attrContainer).getDetails({\n placeId: '...',\n fields: ['opening_hours','utc_offset_minutes'],\n }, function (place, status) {\n if (status !== 'OK') return; // something went wrong\n const isOpenAtTime = place.opening_hours.isOpen(new Date('December 17, 2020 03:24:00'));\n if (isOpenAtTime) {\n // We know it's open.\n }\n\n const isOpenNow = place.opening_hours.isOpen();\n if (isOpenNow) {\n // We know it's open.\n }\n });\n\n### Find Place requests\n\nFor [Find Place requests](/maps/documentation/javascript/places#find_place_requests),\nthere is no replacement for the `opening_hours.open_now` field. We recommend\nmaking a [Place Details request](/maps/documentation/javascript/places#place_details_requests)\nto get `opening_hours` information.\n\n### Nearby Search \\& Text Search requests\n\nFor Nearby Search and Text Search requests, you can use the [`openNow`](/maps/documentation/javascript/reference/places-service#PlaceSearchRequest)\nrequest parameter, which has the effect of filtering results to include only\nplaces that are currently open.\n\n- `openNow:false` returns all places.\n- `openNow:true` returns only places that are currently open.\n\nTo list all places AND indicate `openNow` status, first make a request using\n`openNow:false` to get all places, then make a request using `openNow:true` to\nget open places only. Then, merge the responses.\n\n`utc_offset` field\n------------------\n\nIn Place Details requests, the `utc_offset` field is replaced by the\n`utc_offset_minutes` field. Simply replace occurrences of `utc_offset` with\n`utc_offset_minutes` in the `fields` request parameter, and when reading this\ninformation from `PlaceResult`."]]