Hướng dẫn random sample javascript - javascript mẫu ngẫu nhiên

- Ở bài học trước, tôi đã giới thiệu sơ qua về phương thức random() của đối tượng Math, nó dùng để tạo một số ngẫu nhiên trong khoảng từ 0 đến 1 (không bao gồm số 1)random() của đối tượng Math, nó dùng để tạo một số ngẫu nhiên trong khoảng từ 0 đến 1 (không bao gồm số 1)

Nội dung chính ShowShow

  • 1) Tạo một số nguyên ngẫu nhiên
  • 2) Xây dựng hàm dùng để tạo số nguyên ngẫu nhiên
  • Cơ bản về phương thức Math.random()
  • Các biến thể tạo số ngẫu nhiên trong JavaScript
  • Tạo số ngẫu nhiên giữa 2 giá trị
  • Tạo số nguyên ngẫu nhiên giữa 2 giá trị
  • Một số ứng dụng tạo số ngẫu nhiên trong JavaScript
  • Tạo ngẫu nhiên mã màu RGB
  • Tạo ngẫu nhiên mã màu HEX
  • Tạo chuỗi string ngẫu nhiên
  • Lời kết

- Tuy nhiên không dừng lại ở đó, nếu phương thức random() được sử dụng kết hợp với các phương thức khác thì nó có thể tạo ra những số ngẫu nhiên đa dạng hơn.random() được sử dụng kết hợp với các phương thức khác thì nó có thể tạo ra những số ngẫu nhiên đa dạng hơn.

- Ở bài hướng dẫn này, tôi sẽ giới thiệu đến bạn kỹ thuật để tạo một số ngẫu nhiên đa dạng hơn thông qua những ví dụ.

1) Tạo một số nguyên ngẫu nhiên

2) Xây dựng hàm dùng để tạo số nguyên ngẫu nhiên


<script>
    Math.floor(Math.random() * 10);
</script>

Cơ bản về phương thức Math.random()

Các biến thể tạo số ngẫu nhiên trong JavaScript


<script>
    Math.floor(Math.random() * 11);
</script>

Cơ bản về phương thức Math.random()

Các biến thể tạo số ngẫu nhiên trong JavaScript


<script>
    Math.floor(Math.random() * 100);
</script>

Cơ bản về phương thức Math.random()

Các biến thể tạo số ngẫu nhiên trong JavaScript


<script>
    Math.floor(Math.random() * 101);
</script>

Cơ bản về phương thức Math.random()

Các biến thể tạo số ngẫu nhiên trong JavaScript


<script>
    Math.floor(Math.random() * 10) + 1;
</script>

Cơ bản về phương thức Math.random()

Các biến thể tạo số ngẫu nhiên trong JavaScript


<script>
    Math.floor(Math.random() * 100) + 1;
</script>

Cơ bản về phương thức Math.random()

Các biến thể tạo số ngẫu nhiên trong JavaScript


<script>
    Math.floor(Math.random() * 5) + 3;
</script>

Cơ bản về phương thức Math.random()

Các biến thể tạo số ngẫu nhiên trong JavaScript


<script>
    Math.floor(Math.random() * 7) + 3;
</script>

Cơ bản về phương thức Math.random()

2) Xây dựng hàm dùng để tạo số nguyên ngẫu nhiên

Các biến thể tạo số ngẫu nhiên trong JavaScriptmỗi ví dụ phía trên, giá trị trả về luôn nằm trong một đoạn nhất định, ví dụ:

  • Tạo số ngẫu nhiên giữa 2 giá trị
  • Tạo số nguyên ngẫu nhiên giữa 2 giá trị
  • Một số ứng dụng tạo số ngẫu nhiên trong JavaScript
  • Tạo ngẫu nhiên mã màu RGB

Tạo ngẫu nhiên mã màu HEX

Tạo chuỗi string ngẫu nhiên

Lời kết


<script>
    function TaoSoNgauNhien(min, max){
        return Math.floor(Math.random() * (max - min)) + min;
    }
    var a = TaoSoNgauNhien(1, 10); //Trả về một số ngẫu nhiên từ 1 đến 9
    var b = TaoSoNgauNhien(3, 8); //Trả về một số ngẫu nhiên từ 3 đến 7
    var c = TaoSoNgauNhien(2, 5); //Trả về một số ngẫu nhiên từ 2 đến 4
</script>

Cơ bản về phương thức Math.random()

Các biến thể tạo số ngẫu nhiên trong JavaScript


<script>
    function TaoSoNgauNhien(min, max){
        return Math.floor(Math.random() * (max - min + 1)) + min;
    }
    var a = TaoSoNgauNhien(1, 10); //Trả về một số ngẫu nhiên từ 1 đến 10
    var b = TaoSoNgauNhien(3, 8); //Trả về một số ngẫu nhiên từ 3 đến 8
    var c = TaoSoNgauNhien(2, 5); //Trả về một số ngẫu nhiên từ 2 đến 5
</script>

Cơ bản về phương thức Math.random()

Các biến thể tạo số ngẫu nhiên trong JavaScriptMath.random(), cũng như các ứng dụng của chúng trong lập trình JavaScript.

Tạo số ngẫu nhiên giữa 2 giá trị

Tạo số nguyên ngẫu nhiên giữa 2 giá trị

Một số ứng dụng tạo số ngẫu nhiên trong JavaScriptMath.random() đơn giản và thường hay được sử dụng. Tuy nhiên, phương thức này không an toàn. Vì vậy, nó không được sử dụng trong những bài toán mà số random liên quan đến bảo mật. Thay vào đó, bạn có thể sử dụng phương thức window.crypto.getRandomValues().

Tạo ngẫu nhiên mã màu RGB

Tạo ngẫu nhiên mã màu HEX

Tạo chuỗi string ngẫu nhiênMath.random().

Cơ bản về phương thức Math.random()

Lời kết

- Tuy nhiên không dừng lại ở đó, nếu phương thức random() được sử dụng kết hợp với các phương thức khác thì nó có thể tạo ra những số ngẫu nhiên đa dạng hơn.

<script>
    Math.floor(Math.random() * 11);
</script>
0

- Ở bài hướng dẫn này, tôi sẽ giới thiệu đến bạn kỹ thuật để tạo một số ngẫu nhiên đa dạng hơn thông qua những ví dụ.

Tạo một số nguyễn ngẫu nhiên trong đoạn từ 0 đến 9

Các biến thể tạo số ngẫu nhiên trong JavaScript

Tạo số ngẫu nhiên giữa 2 giá trị

Tạo số nguyên ngẫu nhiên giữa 2 giá trịminmax, bạn có thể tùy biến phương thức Math.random() như sau:

<script>
    Math.floor(Math.random() * 11);
</script>
1

Một số ứng dụng tạo số ngẫu nhiên trong JavaScript

<script>
    Math.floor(Math.random() * 11);
</script>
2

Tạo ngẫu nhiên mã màu RGBnguyên ngẫu nhiên thì sao?

Tạo số nguyên ngẫu nhiên giữa 2 giá trị

Một số ứng dụng tạo số ngẫu nhiên trong JavaScriptnguyên ngẫu nhiên giữa 2 giá trị, bạn có thể sử dụng kết hợp với phương thức Math.floor() như sau với điều kiện minmax cũng là 2 số nguyên:

<script>
    Math.floor(Math.random() * 11);
</script>
3

Tạo ngẫu nhiên mã màu RGB

<script>
    Math.floor(Math.random() * 11);
</script>
4

Tạo ngẫu nhiên mã màu HEX Vì phương thức Math.random() trả về số ngẫu nhiên lớn hơn hoặc bằng 0 và nhỏ hơn 1. Nên phương thức getRandomInt() sẽ trả về số nguyên ngẫu nhiên lớn hơn hoặc bằng min và nhỏ hơn max. Để kết quả có thể nhỏ hơn hoặc bằng max, bạn có thể tùy chỉnh như sau:

<script>
    Math.floor(Math.random() * 11);
</script>
5

Tạo chuỗi string ngẫu nhiên Kết quả chạy của bạn có thể khác với mình và không xuất hiện số 20. Tuy nhiên, đó cũng là điều bình thường. Vì đây là tạo số ngẫu nhiên mà phải không bạn?

Như vậy là mình đã giới thiệu với bạn một số biến thể của việc tạo số ngẫu nhiên trong JavaScript rồi. Tiếp theo, mình sẽ cùng tìm hiểu về một số ứng dụng của việc tạo số ngẫu nhiên trong JavaScript nhé.

Một số ứng dụng tạo số ngẫu nhiên trong JavaScript

Tạo ngẫu nhiên mã màu RGB

Mã màu RGB có dạng như sau:

<script>
    Math.floor(Math.random() * 100);
</script>
1.

Trong đó, giá trị của rValue, gValue và bValue sẽ lớn hơn hoặc bằng 0 và nhỏ hơn hoặc bằng 255. Vì vậy, mình sẽ sử dụng phương thức getRandomIntInclusive() bên trên như sau:getRandomIntInclusive() bên trên như sau:

<script>
    Math.floor(Math.random() * 11);
</script>
6

Tạo ngẫu nhiên mã màu HEX

Mã màu HEX có dạng:

<script>
    Math.floor(Math.random() * 100);
</script>
2.

Trong đó, thành phần RR, GG và BB bên trên lần lượt là giá trị của rValue, gValue và bValue ở hệ hexa (thập lục phân hay cơ số 16).

Bạn có thể áp dụng chiến thuật trên bằng cách tạo ngẫu nhiên các giá trị R, G và B bình thường, sau đó format lại chúng thành dạng Hexa như sau:

<script>
    Math.floor(Math.random() * 11);
</script>
7

Dưới đây là một ví dụ trực quan về việc tạo ngẫu nhiên mã màu:

Tạo chuỗi string ngẫu nhiên

Từ nãy giờ, mình mới chỉ tạo số ngẫu nhiên trong JavaScript. Tuy nhiên, nếu mình muốn tạo chuỗi string ngẫu nhiên thì sao?

Đơn giản lắm! Dưới đây là thuật toán của mình.

Giả sử mình muốn tạo chuỗi string ngẫu nhiên độ dài L với các ký tự thuộc tập hợp cho trước. Khi đó, các bước làm sẽ như sau:

  • Bước 1: Tạo một chuỗi base string chứa tất cả những ký tự đó.: Tạo một chuỗi base string chứa tất cả những ký tự đó.
  • Bước 2: Tạo số nguyên ngẫu nhiên từ 0 đến độ dài của base string. Đây chính là chỉ số của ký tự trong base string.: Tạo số nguyên ngẫu nhiên từ 0 đến độ dài của base string. Đây chính là chỉ số của ký tự trong base string.
  • Bước 3: Lấy ra ký tự ứng với chỉ số ngẫu nhiên trên.: Lấy ra ký tự ứng với chỉ số ngẫu nhiên trên.
  • Bước 4: Lặp lại bước 2 và bước 3 cho đến khi lấy ra đủ số ký tự mong muốn: Lặp lại bước 2 và bước 3 cho đến khi lấy ra đủ số ký tự mong muốn

Cách triển khai:

<script>
    Math.floor(Math.random() * 11);
</script>
8

Ví dụ tạo chuỗi string ngẫu nhiên với độ dài 6 với các ký tự từ 0 đến 9, từ a đến z và từ A đến Z:

<script>
    Math.floor(Math.random() * 11);
</script>
9

Với cách làm trên, mình có thể áp dụng vào bài toán tạo ngẫu nhiên mã màu HEX bằng cách định nghĩa lại base string là các ký tự từ 0 đến 9 và từ a đến f (hoặc từ A đến F):

<script>
    Math.floor(Math.random() * 100);
</script>
0

Lời kết

Trên đây là một số cách tạo số ngẫu nhiên trong JavaScript và ứng dụng của chúng. Qua bài viết này, bạn đã biết cách:

  • Tạo số ngẫu nhiên từ 0 đến 1
  • Tạo số ngẫu nhiên giữa 2 giá trị min, max
  • Tạo số nguyên ngẫu nhiên giữa 2 giá trị min, max
  • Ứng dụng tạo ngẫu nhiên mã màu RGB
  • Ứng dụng tạo ngẫu nhiên mã màu HEX
  • Ứng dụng tạo chuỗi string ngẫu nhiên với độ dài và các ký tự cho trước

Bạn có thường sử dụng những cách tạo số ngẫu nhiên trên không? Ngoài những cái mình đã đề cập bên trên, bạn còn biết ứng dụng nào khác nữa?

Nếu câu trả lời là CÓ thì đừng ngần ngại chia sẻ với mình và mọi người nhé! thì đừng ngần ngại chia sẻ với mình và mọi người nhé!

Xin chào và hẹn gặp lại bạn trong bài viết tiếp theo, thân ái!

★ Nếu bạn thấy bài viết này hay thì hãy theo dõi mình trên Facebook để nhận được thông báo khi có bài viết mới nhất nhé: