از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش قالببندی شماره بهعنوان رشته ارز در جاوا اسکریپت، قالببندی دستی یک عدد بهعنوان رشته ارز میتواند خستهکننده باشد. process. اگرچه اغلب اوقات می توان این کار را در چند خط کد انجام داد، تمرین خوبی است که به جای اینکه خودتان آن را کد سختی کنید، از یک هنجار استاندارد شده پیروی کنید، به علاوه نوشتن آن برای توسعه دهنده بسیار آسان تر است.
سرفصلهای مطلب
معرفی
فرمت دستی یک عدد به عنوان یک رشته ارز می تواند خسته کننده باشد process. اگرچه اغلب اوقات میتوان این کار را در چند خط کد انجام داد، تمرین خوبی است که به جای اینکه خودتان آن را کدگذاری کنید، از یک استاندارد استاندارد پیروی کنید، به علاوه نوشتن کد برای توسعهدهنده بسیار آسانتر است.
در این آموزش نگاهی به این خواهیم داشت روش قالب بندی یک رشته ارز در جاوا اسکریپت.
قالب بندی رشته ها به عنوان ارز با محلی
آ محل مجموعه ای از پارامترها است که هر چیزی را مشخص می کند روی رایانه شما که مخصوص منطقه است:
- تنظیم قالب شماره
- طبقه بندی کاراکتر، تنظیمات تبدیل موردی
- تنظیم قالب تاریخ-زمان
- تنظیم قالب ارز
- تنظیم اندازه کاغذ
- قالب روز هفته / اولین روز هفته
- واحد های اندازه گیری
کاربران ویندوز پارامترهای محلی را به عنوان می شناسند Region settings
. از طرف دیگر، کاربران لینوکس ممکن است ندانند که شما می توانید از آن استفاده کنید locale
فرمان برای بازرسی پارامترهای گفته شده
در جاوا اسکریپت، سادهترین و محبوبترین راه برای قالببندی اعداد بهعنوان رشته ارز، از طریق Intl.NumberFormat()
روش. این رویکرد به شما امکان می دهد اعداد را با استفاده از پارامترهای محلی سفارشی قالب بندی کنید – و در این مقاله، ما تمرکز می کنیم روی ارزها
این Intl.NumberFormat()
سازنده می پذیرد دو استدلال، اولین یک رشته محلی است که با آن محلی را که می خواهیم قالب بندی کنیم تعریف می کنیم:
const price = 1470000.15;
let dollarUSLocale = Intl.NumberFormat('en-US');
let dollarIndianLocale = Intl.NumberFormat('en-IN');
console.log("US Locale output: " + dollarUSLocale.format(price));
console.log("Indian Locale output: " + dollarIndianLocale.format(price));
این خروجی:
1,470,000.15
14,70,000.15
در اینجا، ما انواع موضعی آن را داریم price
، به صورت یک عدد ساده قالب بندی شده است. اگرچه، گزینههای خاصی وجود دارد که میتوانیم آنها را برای سفارشیسازی بیشتر این قالببندی تغییر دهیم process.
این استدلال دوم می تواند برای تعیین گزینه هایی که می خواهید در هنگام قالب بندی اعمال شوند استفاده شود. این یک شی جاوا اسکریپت است که می تواند شامل موارد زیر باشد، اما محدود به موارد زیر نیست:
style
currency
useGrouping
maximumSignificantDigits
بیایید نگاهی جداگانه به این خواص بیاندازیم.
سبک
این style
فیلد نوع قالب بندی را که می خواهید استفاده کنید مشخص می کند. مقادیر ممکن عبارتند از:
decimal
– قالب بندی اعداد اعشاری.currency
– قالب بندی ارزunit
– قالب بندی واحد متریک یا امپریال.
در سناریوی ما، ما فقط در حال قالب بندی هستیم currency
رشته های.
واحد پول
با استفاده از currency
در فیلد، می توانید مشخص کنید که کدام ارز خاص را می خواهید قالب بندی کنید، مانند 'USD'
، 'CAD'
یا 'INR'
.
بیایید خودمان را قالب بندی کنیم price
به ارزهای مختلف:
const price = 1470000.15;
// Format the price above to USD, INR, EUR using their locales.
let dollarUS = Intl.NumberFormat("en-US", {
style: "currency",
currency: "USD",
});
let rupeeIndian = Intl.NumberFormat("en-IN", {
style: "currency",
currency: "INR",
});
let euroGerman = Intl.NumberFormat("de-DE", {
style: "currency",
currency: "EUR",
});
console.log("Dollars: " + dollarUS.format(price));
// Dollars: $147,000,000.15
console.log("Rupees: " + rupeeIndian.format(price));
// Rupees: ₹14,70,000.15
console.log("Euros: " + euroEU.format(price));
// Euros: 1.470.000,15 €
گزینه های اضافی
این useGrouping
فیلد یک فیلد بولی است که به شما امکان میدهد با استفاده از کاما (یا نقطه، برای برخی از زبانها) عدد را گروهبندی کنید. به طور پیش فرض روی آن تنظیم شده است true
همانطور که در خروجی های بالا مشاهده کردیم.
بیایید آن را خاموش کنیم:
let dollarUS = Intl.NumberFormat("en-US", {
style: "currency",
currency: "USD",
useGrouping: false,
});
// $1470000.15
این maximumSignificantDigits
فیلد به شما امکان می دهد تعداد ارقام قابل توجه قیمت را تنظیم کنید. این می تواند برای گرد کردن متغیر قیمت شما استفاده شود روی تعداد ارقام مهمی که تنظیم کرده اید.
ارقام مهم، به عبارت ساده شده، ارقام نمایش یک عدد هستند که هر وزنی را از نظر دقت دارند.
از قضا، دقت یک عدد به عنوان تعداد ارقام مهم آن تعریف می شود.
ارقام مهم عبارتند از:
- همه ارقام غیر صفر
- صفرهایی که در هر جایی بین دو رقم غیرصفر وجود دارند
- صفرهایی که در سمت راست همه ارقام غیرصفر قرار دارند، اما فقط در صورتی که نشان دهنده دقت بالاتر باشند.
ارقام غیر معنی دار عبارتند از:
- صفر در سمت چپ همه ارقام غیر صفر
- صفرهایی که در سمت راست همه ارقام غیرصفر قرار دارند که نشان دهنده دقت نیستند
مثلا در شماره 000003.1240000
اگر دقت ما 4 رقم قابل توجه باشد، تنها 4 رقم قابل توجه وجود دارد (3.124
). با این حال، اگر دقت ما 5 رقم قابل توجه باشد، می تواند 5 رقم قابل توجه نیز وجود داشته باشد (3.1240
).
یک مثال در زیر نشان داده شده است:
const price = 147741.15;
// Format the above price dollar currency
let dollarUS = Intl.NumberFormat("en-US", {
style: "currency",
currency: "USD",
useGrouping: true,
maximumSignificantDigits: 3,
}); // $148,000
let dollarUS2 = Intl.NumberFormat("en-US", {
style: "currency",
currency: "USD",
useGrouping: true,
}); // $147,741.15
نتیجه
در این آموزش، روش قالب بندی یک عدد به عنوان رشته ارز در جاوا اسکریپت را بررسی کرده ایم. ما استفاده کرده ایم Intl.NumberFormat()
روش برای انجام این کار، با محلی مورد نظر و چندین تنظیمات می توانیم برای سفارشی کردن قالب بندی استفاده کنیم process.
منتشر شده در 1403-01-17 08:48:05