Hướng dẫn format number javascript

Bài viết được sự cho phép của tác giả Lưu Bình An

Number.prototype.toLocaleString()

const number = 12345.6789

// sẽ lấy local mặc định của trình duyệt
console.log(number.toLocaleString());
// 12,345.679 (en-US)

console.log(number.toLocaleString('vi-VN'));
// 123.456,789

Định dạng tiền tệ

Nếu muốn định dạng tiền tệ, bạn cần sử dụng thêm tham số thứ 2 của hàm toLocaleString

{
    style: 'currency',
    currency: [giá trị ISO 4217] // tham số bắt buộc, ko truyền lỗi
}

Tham khảo giá trị ISO 3217

Hướng dẫn format number javascript

const number = 12345.6789;

console.log(
    number.toLocaleString('vi-VN', {
        style: 'currency',
        currency: 'VND'
    })
);

// 12.346 ₫

console.log(
  number.toLocaleString('ja-JP', {
    style: 'currency',
    currency: 'JPY',
  }),
);

// ¥12,346

Phần trăm

Chuyển đồi thành đơn vị phần % ngoài việc nhân với 100, ns còn thêm 2 tùy chỉnh cũng vui là minimumFractionDigits và maximumFractionDigits (mặc định là 0 và 2 cho kiểu tiền tệ) để lấy số lượng ký tự muốn lấy

const number = 0.1234;

console.log(
  number.toLocaleString('en-US', {
    style: 'percent',
    minimumFractionDigits: 2,
  }),
);
// 12.34%

console.log(
  number.toLocaleString('en-US', {
    style: 'percent',
    minimumFractionDigits: 1,
  }),
);
// 12.3%

Intl.NumberFormat

Nếu hông ưu Number.prototype.toLocaleString() có thể dùng constructor Intl.NumberFormat. Nếu như thấy sao phải lăng tăng giữa 2 thằng này? Trong trường hợp bạn cần làm việc định dạng này tới lui nhiều lần cho cùng một locale, cùng một tùy chọn cố định, thì bạn nên dùng Intl.NumberFormat cho chuẩn tốc độ.

const numberFormat = new Intl.NumberFormat('vi-VN', {
  style: 'currency',
  currency: 'VND',
});

console.log(numberFormat.format(12345.6789));
// 12.346 ₫

console.log(numberFormat.format(2345.67891));
// 2.346 ₫

Natively Format JavaScript Numbers

Bài viết gốc được đăng tải tại vuilaptrinh.com

Có thể bạn quan tâm:

  • 5 câu hỏi javascript và cách đánh bại chúng
  • Dùng con trỏ this trong JavaScript thế nào cho đúng?
  • Console Javascript quá kinh khủng

Xem thêm các việc làm JavaScript hấp dẫn tại TopDev

Nội dung bài viết

Nội dung chính

  • Video học lập trình mỗi ngày
  • Javascript format giá tiền với toFixed()
  • Hàm number_format trong JavaScript
  • javascript format giá tiền
  • Format VND JavaScript

Video học lập trình mỗi ngày

Intl.NumberFormat mặc dù được hỗ trợ trong những brower hiện đại để Javascript format giá tiền nhưng nếu một lúc nào đó devjs muốn viết cho bản thân mình or cho team một chức năng tương tự thì làm như thế nào? Bài dưới đây sẽ có những phương án rất đơn giản mà hiệu quả Javascript format giá tiền.

Đọc thêm tips javascript

Tips - Math.random() in JavaScript

Tipjs - 5 cách chuyển value sang string trong javascript

Javascript format giá tiền với toFixed()

Ví dụ: 12345.67120398 trở thành 12,345.67. Chúng ta có thể làm đơn giản Kiểu tiền tệ trong JavaScript như ví dụ dưới đây.

var yourBalance = 2489.8237;
 
//returns 2489.824 (rounds up)
yourBalance.toFixed(3);
 
//returns 2489.82
yourBalance.toFixed(2);
 
//returns 2489.8237000 (pads the decimals)
yourBalance.toFixed(7);

Chúng ta có thể làm tương tự khi sử dụng replace, như demo dưới đây.

function format1(n, currency) {
  return currency + n.toFixed(2).replace(/./g, function(c, i, a) {
    return i > 0 && c !== "." && (a.length - i) % 3 === 0 ? "," + c : c;
  });
}

function format2(n, currency) {
  return currency + n.toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, '$1,');
}


var numbers = [1, 12, 123, 1234, 12345, 123456, 1234567, 12345.67];

for (var i = 0; i < numbers.length; i++) {
 console.log(format1(numbers[i], '£ '));
}

for (var i = 0; i < numbers.length; i++) {
 console.log(format2(numbers[i], 'vnd '));
}

Kết qủa

Format #1:

£ 1.00
£ 12.00
£ 123.00
£ 1,234.00
£ 12,345.00
£ 123,456.00
£ 1,234,567.00
£ 12,345.67
Format #2:

vnd 1.00
vnd 12.00
vnd 123.00
vnd 1,234.00
vnd 12,345.00
vnd 123,456.00
vnd 1,234,567.00
vnd 12,345.67

Hàm number_format trong JavaScript

Có một chức năng ECMAScript mới hơn được cung cấp bởi Internationalization API

const formatter = new Intl.NumberFormat('en-US', {
  style: 'currency',
  currency: 'USD',
  minimumFractionDigits: 2
})
 
// "$1,000.00"
formatter.format(1000);
 
// "$10.00"
formatter.format(10);
 
// "$1,234,567,890.00"
formatter.format(1234567890);

Đọc thêm tips javascript

Tips - Math.random() in JavaScript

Tipjs - 5 cách chuyển value sang string trong javascript

javascript format giá tiền

const test1 = '1234567890'
const format = test1.replace(/\B(?=(\d{3})+(?!\d))/g, ',')

console.log(format) // 1,234,567,890

Format VND JavaScript

function formatCash(str) {
 	return str.split('').reverse().reduce((prev, next, index) => {
 		return ((index % 3) ? next : (next + ',')) + prev
 	})
}
console.log(formatCash('1234567890')) // 1,234,567,890

Hướng dẫn url trong javascript

Trong bài này chúng ta sẽ tìm hiểu đối tượng location trong Javascript, đây là đối tượng dùng để xử lý chuyển hướng trang, hoặc xử lý các thành phần của ...

Hướng dẫn object constructor javascript

Series lập trình JavaScript, ngôn ngữ lập trình linh động, thực thi phía client.Object Constructors trong JavaScriptNội dung chính:Object Constructor là gì?Thêm property vào ...

Javascript trong ba tăng của web là

Hiện nay, JavaScript là một ngôn ngữ đang được nhiều bạn trẻ quan tâm nhiều trong những năm gần đây. Vậy JavaScript là gì? Và việc Tất cả sẽ có đầy ...

Hướng dẫn binding in javascript

Tác giả:TAPAS ADHIKARYKhái niệm “this” trong JavaScript là một trong những khía cạnh khó hiểu nhất của ngôn ngữ này. Tuy nhiên lại là nhân tố quan trọng để ...

Hướng dẫn dùng followinf JavaScript

Nội dung bài viếtVideo học lập trình mỗi ngàyKhông ai mong đợi điều này, nhưng JavaScript đã trở thành ngôn ngữ lập trình quan trọng nhất thế giới. - Douglas ...

Hướng dẫn dùng call.back JavaScript

Chắc là bạn đã nghe về hàm Callback trong Javascript? Hàm Callback trong Javascript Vậy Callback là gì? Hãy cùng mình tìm hiểu callback qua bài viết này nhé. (Sau đó, bên ...

Hướng dẫn html import js

Home » Web Development » Học JavaScript Cơ Bản 07/11/2021 29384 lượt xem Nhúng (chèn) JavaScript vào HTML – ảnh minh họaTương tự như với CSS, dưới đây mình sẽ ...

How do you concatenate variables in python?

❮ Python GlossaryString ConcatenationString concatenation means add strings together.Use the + character to add a variable to another variable:Example x = Python is y = awesomez = x + y ...

Hướng dẫn dùng thois JavaScript

Đây là bài dịch, bài gốc mời các bạn xem ở đây: https://medium.com/the-node-js-collection/modern-javascript-explained-for-dinosaurs-f695e9747b70Thời nay, việc học Javascript ...

Hướng dẫn decode html javascript

Phương thức decodeURI() sẽ giải mã một chuỗi uri đã được mã hóa các kí tự đặc biệt trước đó. Phương thức trả về chuỗi đã được giải mã.Bài ...

Get url file upload javascript

How to get full path of file while selecting file using

Hướng dẫn php manual functions

Affecting PHPs BehaviourAPCu — APC User CacheComponereError Handling — Error Handling and LoggingFFI — Foreign Function InterfaceOPcacheOutput Control — Output Buffering ControlPHP ...

Dom manipulation javascript assignment expert

Answer to Question #302709 in HTML/JavaScript Web Application for chethanDOM ManipulationsThe goal of this coding exam is to quickly get you off the ground with the DOM Manipulations.Use the below ...

Change global variable in function javascript

I am using JavaScript and I create a global variable. I define it outside of a function and I want to change the global variable value from inside a function and use it from another function, how do ...

Hướng dẫn dùng to.learn JavaScript

Nội dung bài viếtVideo học lập trình mỗi ngàyKhông ai mong đợi điều này, nhưng JavaScript đã trở thành ngôn ngữ lập trình quan trọng nhất thế giới. - ...

Hướng dẫn window.onload javascript

Trong bài này chúng ta sẽ tìm hiểu sự kiện window.onload trong javascript, đây là sự kiện xảy ra khi mọi tài nguyên của website đã load xong.Bài viết này được ...

Hướng dẫn dùng createdocument trong PHP

Trong một tài liệu HTML, phương thức createElement() tạo ra phần tử HTML được chỉ định bởi tagName, hoặc một HTMLUnknownElement nếu tagName không được nhận ...

Hướng dẫn javascript divide get integer

JavaScript calculates right the floor of negative numbers and the remainder of non-integer numbers, following the mathematical definitions for them.FLOOR is defined as the largest integer number ...

Hướng dẫn initialize in javascript

JavaScript is a multi-paradigm, dynamic language with types and operators, standard built-in objects, and methods. Its syntax is based on the Java and C languages — many structures from those ...

Hướng dẫn dùng w3global JavaScript

W3Global Inc. has multiple openings at multiple levels for the following positions:Master’s+1yr exp/equiv.: FrontEnd Developer (W3FD21): JavaScript, JIRA, Visual Studio, SOAP UI, GitLab, and ...

Hướng dẫn bitwise trong javascript

Toán tửTênMô tả& AND Đặt mỗi bit thành 1 nếu cả hai bit là 1 | OR Đặt mỗi bit thành 1 nếu một trong hai bit là 1 ^ XOR Đặt mỗi bit thành 1 nếu chỉ một ...

Hướng dẫn python free code camp

freeCodeCamp is a donor-supported tax-exempt 501(c)(3) nonprofit organization (United States Federal Tax Identification Number: 82-0779546)Our mission: to help people learn to code for free. We ...

Hướng dẫn typeof javascript

Trong bài này chúng ta sẽ tìm hiểu từ khóa typeof trong Javascript, từ khóa này dùng để kiểm tra kiểu dữ liệu của một biến bất kì trong Javascript.Bài viết này ...

Hướng dẫn dùng javascript.com JavaScript

- Để sử dụng JavaScript trong trang web, chúng ta có hai cách cơ bản như sau:Cách 1: Viết mã lệnh JavaScript trực tiếp vào trang web.Cách 2: Viết mã lệnh JavaScript ...

Hướng dẫn random array php

(PHP 4, PHP 5, PHP 7, PHP 8)array_rand — Pick one or more random keys out of an arrayDescriptionarray_rand(array $array, int $num = 1): int|string|arrayParameters array The input array. num ...

Hướng dẫn hash object javascript

object-hashGenerate hashes from objects and values in node and the browser. Uses node.js crypto module for hashing. Supports SHA1 and many others (depending on the platform) as well as custom streams ...

Hướng dẫn dùng i-0 JavaScript

Vòng lặp for trong Javascript In ra các số từ 100 - 0 DEMOHãy in ra các số từ 100 trở về 0 bằng Javascript, bạn có thể sử dụng vòng lặp for kết hợp với ...

Hướng dẫn test regex javascript

Bài viết được sự cho phép của tác giả Lưu Bình AnGiới thiệuRegular Expression (hay gọi tắt là regex – đọc là ghi-ríc-cờ-sờ) là một string với ...

Hướng dẫn html tag stripping

Quantity add to cart htmlIn this Article well take an in-depth look at the JavaScript needed to update the quantity of items in the Cart Layout.IntroductionIn this Article well take an in depth look ...

Hướng dẫn dùng methiod JavaScript

Trong JavaScript, một mảng (array) là một biến đặc biệt được sử dụng để lưu trữ các phần tử khác nhau.Nội dung chính 1. Phương thức some() 2. Phương ...

Hướng dẫn dùng round decimal trong PHP

botvietbai.com cung cấp các hướng dẫn, tài liệu tham khảo và bài tập trực tuyến miễn phí bằng tất cả các ngôn ngữ chính của web. Bao gồm các chủ đề phổ ...

Hướng dẫn dùng comparisiom JavaScript

JavaScript Comparison and Logical Operators trong JavascriptComparison and Logical operators có thể hiểu nôm na là so sánh và biểu thức điều kiện, chúng được sử dụng để ...

Hướng dẫn dùng whats fn trong PHP

Arrow Function là tính năng được thêm vào phiên bản phát hành mới nhất của PHP 7, đó là PHP 7.4. Arrow Function trong PHP 7.4 Thử sử dụng Arrow Function trong PHP 7.4 ...

Hướng dẫn dùng oeapi JavaScript

Nhóm phát triển của chúng tôi vừa ra mắt website langlearning.net học tiếng Anh, Nga, Đức, Pháp, Việt, Trung, Hàn, Nhật, ... miễn phí cho tất cả mọi người. Là ...

Get current file path javascript

Im trying to do something like a C #include filename.c, or PHP include(dirname(__FILE__).filename.php) but in javascript. I know I can do this if I can get the URL a js file was loaded from ...