/**
* 金额处理
* @param amount 金额
* @param decimal 小数
*/
export const coutryCurrencySymbol = (amount, decimal = 0) => {
if (!amount) {
// console.error("请传入金额,必传参数");
return 0;
}
amount = Number(amount); // 确保是数字类型 type:number
try {
let lang = "";
lang =
global?.__incrementalCache?.requestHeaders["accept-language"]?.split(
","
)[0];
if (typeof window !== "undefined") {
lang = navigator.language;
}
// console.log(lang, "lang 使用的语言环境");
const countryOption = {
// 这个对象可以不断拓展国家
id: { locale: "id-ID", currency: "IDR" }, // 印尼 IDR 货币英文代码
zh: { locale: "zh-CN", currency: "CNY" }, // 中国 CNY 货币英文代码
"zh-CN": { locale: "zh-CN", currency: "CNY" }, // 中国 CNY 货币英文代码
"en-US": { locale: "en-US", currency: "USD" }, // 英语 USD 货币英文代码
fil: { locale: "en-PH", currency: "PHP" }, // 菲律宾的官方语言环境(locale)通常是 fil-PH 或 en-PH 英语 货币英文代码
vi: { locale: "vi-VN", currency: "VND" }, // 越南 VND 货币英文代码
default: { locale: "en-US", currency: "USD" }, // 默认 使用英语
};
let option = Object.keys(countryOption).find(
(key) => lang.indexOf(key) > -1
);
option = countryOption[option] || countryOption.default;
return new Intl.NumberFormat(option.locale, {
// style: 'currency', // 启用货币功能
// currency: option.currency, // 对应国家的货币英文代码
minimumFractionDigits: decimal, // 小数点,默认可以不传
}).format(amount);
} catch (error) {
console.log("error:", error);
return amount;
}
};
根据国家展示钱币的分割符
最新推荐文章于 2024-10-06 13:30:57 发布