Hướng dẫn generate uuid javascript - tạo javascript uuid

Nội dung bài viết

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

UUID là gì? Hẳn là mỗi developer cũng đã nghe về UUID rồi, nói sơ qua thì UUID là viết tắt của Universally Unique IDentifier, có thể hiểu đó là một định danh duy nhất và không có cái thứ hai. Hay nói cách khác đó là một id duy nhất trong global. Đây cũng là một bài viết trong Series - Mẹo viết javascript, ở đó có nhiều tips hữu ích có thể bạn sẽ cần.

Theo kiablog.com - UUID là viết tắt của Universally Unique IDentifier, hiểu nôm na là một định danh duy nhất trong toàn thể vũ trụ [universal cơ mà] =]]. Mục đích của UUID sinh ra là bởi vì:

  • Dữ liệu lớn, kiểu khóa chính auto imcrement cần nhiều byte để lưu hơn. Và khóa chính kiểu này không phù hợp khi mà hệ thống có nhiều server, nhiều client cùng lúc truy cập trên toàn thế giới.
  • Nếu dùng khóa chính kiểu auto imcrement, có thể dễ dàng truy ra được trong database có bao nhiêu record. Thường thấy ở đường dẫn kiểu "domain.com/user/12345".

Bởi vậy UUID ra đời nhằm khắc phục những yếu điểm trên. Vậy nếu bạn đủ sức xây dựng một hệ thống với nhiều server, phục vụ hàng tỉ tỉ user hoặc chỉ đơn giản là không muốn để lộ id ra ngoài, hãy nghĩ tới UUID. Với mục đích của bài đăng này, tôi sẽ sử dụng javascript để tạo một UUID. Chứ không phải dành thời gian để phân tích về UUID.

Tạo UUID trong javascript

Gần đây tôi đã suy nghĩ rất nhiều về UUID. Hệ thống mà tôi được thừa hưởng tại nơi làm việc bị ảnh hưởng bởi việc sử dụng chúng. Đối với nhiều nhà phát triển, UUID dường như là một cách hoàn toàn tuyệt vời để thiết lập danh tính của một bản ghi trong một hệ thống. Ý tôi là, thật tuyệt vời khi bạn có thể tạo một ID duy nhất cho mọi hệ thống trên thế giới? Có nhiều thư viện đê thực hiện điều đó nhưng một vài ý tưởng tôi đã tìm được tren reddit và một kết quả làm tôi mỹ mãn, mặc dù vẫn có nhiều tranh cãi khác nhau về cách làm này.

// Author: Abhishek Dutta, 12 June 2020
// License: CC0 [//creativecommons.org/choose/zero/]
function uuid[] {
  var temp_url = URL.createObjectURL[new Blob[]];
  var uuid = temp_url.toString[];
  URL.revokeObjectURL[temp_url];
  return uuid.substr[uuid.lastIndexOf['/'] + 1]; // remove prefix [e.g. blob:null/, blob:www.test.com/, ...]
}

# Cách sử dụng tạo uuid

for[var i=0; i

Bài Viết Liên Quan

Chủ Đề