toLocaleString() 不起作用

Sam*_*ath 7 javascript typescript angular

更新:

在此处输入图片说明

原来的:

你能告诉我为什么toLocaleString()不在这里工作吗?它适用于所有其他地方。我需要它给1000 separators。任何线索或解决方法?

 forEach(budgetList, async (b: Budget) => {
          const budget: Budget = find(this.oldBudgetList, (budget: Budget) => {
            return b.budgetGroup.name == budget.budgetGroup.name;
          });
          if (budget == null) {//new item
            const log = this.logProvider.getLogDetails(`Budget : ${b.budgetGroup.name}`, `Added ${b.amount.toLocaleString()}`, 'project', project.id);
            await this.logProvider.createLog(log, project.id);//add log
          } 
        });
Run Code Online (Sandbox Code Playgroud)

运行:

在此处输入图片说明

另一个地方,效果很好!

const log = this.logProvider.getLogDetails('Project : Budget', `Budget changed from ${this.oldBudgetValue.toLocaleString()} to ${project.budget.toLocaleString()}`, 'project', project.id);
await this.logProvider.createLog(log, project.id);//add log
Run Code Online (Sandbox Code Playgroud)

LGS*_*Son 13

如果值是 type String,你可以做例如

Number(b.amount).toLocaleString()
Run Code Online (Sandbox Code Playgroud)

(这是在 OP 的情况下起作用的)


其他选择可能是

parseInt('number as string').toLocaleString()

parseFloat('number as string').toLocaleString()
Run Code Online (Sandbox Code Playgroud)