شما میتوانید برای همه نقاط پایانی API آب و هوا، از بین METRIC ) یا IMPERIAL را انتخاب کنید.
برای درخواست سیستم واحد، units_system روی METRIC یا IMPERIAL تنظیم کنید. اگر units_system مشخص نشده باشد، به طور پیشفرض روی METRIC تنظیم میشود.
https://weather.googleapis.com/v1/currentConditions:lookup?key=YOUR_API_KEY&location.latitude=LATITUDE&location.longitude=LONGITUDE&units_system=IMPERIAL
مقادیر API آب و هوا از واحدهای متریک به امپریال تغییر یافت
جدول زیر مقادیر پاسخ API آب و هوا را که میتوانند بین سیستمهای واحد تبدیل شوند، فهرست میکند.
| تبدیل واحد (متریک به امپریال) | مقادیر API آب و هوا |
|---|---|
| سلسیوس (درجه سانتیگراد) تا فارنهایت (درجه فارنهایت) | دما، احساس، نقطه شبنم، شاخص گرما، باد سرد، لامپ مرطوب |
| میلیمتر (mm) به اینچ (in) | بارش، QPF، ضخامت یخ |
| کیلومتر/ساعت (km/h) به مایل/ساعت (mph) | سرعت باد، تندباد |
| کیلومتر (km) به مایل (mi) | قابلیت مشاهده |
مثال برای پاسخ currentConditions
جدول زیر مقادیر موجود در بدنه پاسخ یک درخواست currentConditions را فهرست میکند. مقادیر با رنگ آبی پررنگ از واحدهای METRIC به IMPERIAL تغییر کردهاند:
| ویژگی API آب و هوا | متریک (پیشفرض) | امپریال |
|---|---|---|
| زمان فعلی | 2025-03-06T11:08:49.126979608Z | ۳/۶/۲۰۲۵، ساعت ۶:۰۸:۴۹ صبح |
| منطقه زمانی | آمریکا/نیویورک | آمریکا/نیویورک |
| آیا روز است؟ | نادرست | نادرست |
| توضیحات آب و هوا | غالباً ابری | غالباً ابری |
| دما | ۱۱.۵ درجه سانتیگراد | ۵۲.۷ درجه فارنهایت |
| احساسی شبیه | ۹.۹ درجه سانتیگراد | ۴۹.۷ درجه فارنهایت |
| نقطه شبنم | ۸.۷ درجه سانتیگراد | ۴۷.۶ درجه فارنهایت |
| شاخص گرما | ۱۱.۵ درجه سانتیگراد | ۵۲.۷ درجه فارنهایت |
| باد سرد | ۹.۹ درجه سانتیگراد | ۴۹.۷ درجه فارنهایت |
| رطوبت نسبی | ۸۳٪ | ۸۳٪ |
| شاخص فرابنفش | 0 | 0 |
| احتمال بارش | ۹٪ | ۹٪ |
| بارش | 0 میلیمتر | ۰ اینچ |
| احتمال رعد و برق | 0 | 0 |
| فشار هوا | ۹۹۱.۴۷ مگابایت | ۹۹۱.۴۷ مگابایت |
| جهت باد | ۲۷۵ درجه | ۲۷۵ درجه |
| جهت باد (کاردینال) | غرب | غرب |
| سرعت باد | ۱۴ کیلومتر در ساعت | ۹ مایل در ساعت |
| تندباد | ۲۷ کیلومتر در ساعت | ۱۷ مایل در ساعت |
| قابلیت مشاهده | ۱۰ کیلومتر | ۶ مایل |
| پوشش ابر | ۶۵٪ | ۶۵٪ |
| تغییر دما | ۱.۴ درجه سانتیگراد | ۲.۶ درجه فارنهایت |
| حداکثر دما | ۱۳.۲ درجه سانتیگراد | ۵۵.۸ درجه فارنهایت |
| حداقل دما | ۱۰.۱ درجه سانتیگراد | ۵۰.۱ درجه فارنهایت |
| کیو پی اف | ۲۷.۵۵۶۴ میلیمتر | ۱.۰۸۴۹ اینچ |
سیستمهای واحد در جهان
سیستمهای واحد بر اساس کشور
بیشتر کشورهای خارج از ایالات متحده از سیستم METRIC استفاده میکنند، در حالی که ایالات متحده از سیستم IMPERIAL استفاده میکند. برخی کشورها، مانند بریتانیا و کانادا، از ترکیبی از هر دو سیستم استفاده میکنند. برای نقشه و لیست کامل کشورهایی که از سیستم متریک استفاده میکنند، به بخش متریکاسیون مراجعه کنید.

تبدیل واحدها از پاسخ API آب و هوا
تبدیل واحدها به صورت دستی
شما میتوانید با استفاده از اسکریپت زیر، واحدها را به صورت دستی تبدیل کنید:
function convert(conversionType, value) { if (value === null || value === undefined || typeof value !== 'number') { return "Invalid input"; // Handle null, undefined, or non-numeric input } switch (conversionType) { case 'C_to_F': // Celsius to Fahrenheit let convertedCtoF = (value * 9 / 5) + 32; return convertedCtoF.toFixed(2) + " °F"; case 'mm_to_in': // Millimeters to Inches let convertedMmToIn = value * 0.0393701; return convertedMmToIn.toFixed(2) + " in"; case 'km_to_mi': // Kilometers to Miles let convertedKmToMi = value * 0.621371; return convertedKmToMi.toFixed(2) + " mi"; case 'km/h_to_mph': // Kilometers per hour to Miles per hour let convertedKmHToMph = value * 0.621371; return convertedKmHToMph.toFixed(2) + " mph"; case 'millibar_to_psi': // Millibar to PSI let convertedMillibarToPsi = value * 0.0145038; return convertedMillibarToPsi.toFixed(2) + " psi"; default: return "Invalid conversion type"; } } console.log(convert('C_to_F', 10)); // Output: 50.00 °F console.log(convert('mm_to_in', 25)); // Output: 0.98 in console.log(convert('invalid_type', 5)); // Output: Invalid conversion type
تبدیل واحدها با استفاده از کتابخانه
همچنین میتوانید از کتابخانهای مانند convert-units برای تبدیل واحدها استفاده کنید:
// module
import convert from 'convert-units';
// or script inclusion
// <script src="https://unpkg.com/convert@5.8.0/dist/index.js" ></script>
// let convert = convert.convert
function convertWithLibrary(conversionType, value) {
if (value === null || value === undefined || typeof value !== 'number') {
return "Invalid input";
}
try {
switch (conversionType) {
case 'C_to_F':
let convertedCtoF = convert(value, 'C').to('F');
return convertedCtoF.toFixed(2) + " °F";
case 'mm_to_in':
let convertedMmToIn = convert(value, 'mm').to('in');
return convertedMmToIn.toFixed(2) + " in";
case 'km_to_mi':
let convertedKmToMi = convert(value, 'km').to('mi');
return convertedKmToMi.toFixed(2) + " mi";
case 'km/h_to_mph':
// km/h is not directly supported, so we convert km to mi
// then assume it's per hour
let convertedKmToMiValue = convert(value, 'km').to('mi');
return convertedKmToMiValue.toFixed(2) + " mph";
case 'millibar_to_psi':
// millibar is not directly supported, so convert millibar to bar, then bar to psi
let barValue = value / 1000;
let convertedMillibarToPsi = convert(barValue, 'bar').to('psi');
return convertedMillibarToPsi.toFixed(2) + " psi";
default:
return "Invalid conversion type";
}
} catch (error) {
console.error("Conversion error:", error);
return "Conversion failed";
}
}
console.log(convertWithLibrary('C_to_F', 10)); // Output: 50.00 °F
console.log(convertWithLibrary('mm_to_in', 25)); // Output: 0.98 in
console.log(convertWithLibrary('invalid_type', 5)); // Output: Invalid conversion type