Tạo mảng số nguyên tương tự mảng chuỗi, nhưng chứa giá trị number.
Cách 1: Array Literal (Khuyến nghị)
var rank = [1, 2, 3, 4];
Cách 2: Array Constructor
var rank = new Array(1, 2, 3, 4);
⚠ Cảnh báo:
new Array(3) // [empty × 3] — sparse, length=3 new Array(3.5) // RangeError: Invalid array length
Ví dụ: Tìm phần tử chung của 2 mảng số
<!DOCTYPE html>
<html>
<body>
<script>
var arr1 = [50, 60, 65, 90];
var arr2 = [25, 35, 50, 90];
// Cách 1: Lồng nhau (O(n*m))
for (var i = 0; i < arr1.length; i++) {
for (var j = 0; j < arr2.length; j++) {
if (arr1[i] === arr2[j]) {
document.write("<br>Phần tử chung: " + arr2[j]);
}
}
}
// Cách 2: Set + filter (O(n+m)) - hiệu quả hơn
var set2 = new Set(arr2);
var common = arr1.filter(x => set2.has(x));
document.write("<br>Cách 2: " + common); // 50,90
</script>
</body>
</html>
Kết quả
Phần tử chung: 50 Phần tử chung: 90 Cách 2: 50,90
Typed Array cho số nguyên (Hiệu năng cao):
| Loại | Kích thước | Phạm vi |
|---|---|---|
Int8Array | 1 byte | -128 đến 127 |
Uint8Array | 1 byte | 0 đến 255 |
Int16Array | 2 bytes | -32,768 đến 32,767 |
Uint16Array | 2 bytes | 0 đến 65,535 |
Int32Array | 4 bytes | -2,147,483,648 đến 2,147,483,647 |
Uint32Array | 4 bytes | 0 đến 4,294,967,295 |
BigInt64Array | 8 bytes | BigInt range |
const arr = new Int32Array([1, 2, 3, 4]); // Tối ưu bộ nhớ, tốc độ