在javascript中的Intl.NumberFormat函数中添加MaximumIntegraterDigits选项

在javascript中的Intl.NumberFormat函数中添加MaximumIntegraterDigits选项,javascript,number-formatting,currency-formatting,Javascript,Number Formatting,Currency Formatting,我有一个react组件,它使用Intl.NumberFormatjavascript函数格式化货币 import React from 'react'; import PropTypes from 'prop-types'; import classNames from 'classnames'; const Amount = ({ value, currency, locale, className, maxFractionDigit, minFractionDigi

我有一个react组件,它使用
Intl.NumberFormat
javascript函数格式化货币

import React from 'react';
import PropTypes from 'prop-types';
import classNames from 'classnames';

const Amount = ({
  value,
  currency,
  locale,
  className,
  maxFractionDigit,
  minFractionDigit,
  notation,
  compactDisplay,
}) => {
  const amount = new Intl.NumberFormat(locale, {
    style: 'currency',
    currency,
    currencySign: 'standard',
    notation,
    compactDisplay,
    maximumFractionDigits: maxFractionDigit,
    minimumFractionDigits: minFractionDigit,
  }).format(value);

  return <span className={classNames(className)}>{amount}</span>;
};

Amount.defaultProps = {
  locale: 'en-US',
  className: null,
  maxFractionDigit: 2,
  minFractionDigit: 0,
  notation: 'compact',
  compactDisplay: 'short',
};

Amount.propTypes = {
  value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,
  currency: PropTypes.string.isRequired,
  locale: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),
  className: PropTypes.string,
  maxFractionDigit: PropTypes.number,
  minFractionDigit: PropTypes.number,
  notation: PropTypes.oneOf(['standard', 'scientific', 'engineering', 'compact']),
  compactDisplay: PropTypes.oneOf(['short', 'long']),
};

export default Amount;
从“React”导入React;
从“道具类型”导入道具类型;
从“类名称”导入类名称;
常数金额=({
价值
货币,
场所
类名,
MaxFractionDigital,
minFractionDigit,
符号
小型显示器,
}) => {
const amount=新的Intl.NumberFormat(区域设置{
风格:“货币”,
货币,
货币符号:“标准”,
符号
小型显示器,
maximumFractionDigits:maxFractionDigit,
最小分数位数:最小分数位数,
}).格式(值);
返回{amount};
};
Amount.defaultProps={
地点:“en US”,
类名:null,
maxFractionDigit:2,
minFractionDigit:0,
表示法:'紧凑',
compactDisplay:'短',
};
Amount.propTypes={
值:PropTypes.oneOfType([PropTypes.string,PropTypes.number])是必需的,
货币:PropTypes.string.isRequired,
区域设置:PropTypes.oneOfType([PropTypes.string,PropTypes.node]),
类名:PropTypes.string,
maxFractionDigit:PropTypes.number,
minFractionDigit:PropTypes.number,
注释:PropTypes.one of(['standard'、'scientific'、'engineering'、'compact']),其中之一,
compactDisplay:PropTypes.oneOf(['short','long']),
};
出口违约金额;

它设置给定货币的格式,即:如果输入为
123456.5556
,则输出为
123.46K
,但现在我想更改最大整数位数以显示为6,因此如果输入为
123456.5556
,则输出始终为
123456.5556
。e、 g:不会有任何
K
符号,因此最小截断将来自
M
而不是
K
。因此,对于输入
1234567.5556
输出将
123万美元
,我在这里查看了文档,但没有找到任何类似
最大集成数字
的选项,因此,我如何使用当前代码实现这一点。

@JaromandaX它是由
compactDisplay
notation
参数在
Intl.NumberFormat
函数中自动完成的,该函数是Javascript的默认值,这里是文档对不起,我误读了。。。因此,您希望123456.5556为123456.5556-然后不要使用紧凑表示法,除非金额>9999999.99999。。。。i、 e.即
符号:值<1e6?“标准“:“compact”
@JaromandaX它是通过
Intl.NumberFormat
函数中的
compactDisplay
参数自动完成的,该参数是Javascript的默认值,这是文档对不起,我误读了。。。因此,您希望123456.5556为123456.5556-然后不要使用紧凑表示法,除非金额>9999999.99999。。。。i、 e.即
符号:值<1e6?“标准“:“紧凑型”