0

20 Câu lệnh JavaScript giúp bạn trông giống một Pro

JavaScript chứa đầy những điều bất ngờ và tính linh hoạt của nó cho phép các lập trình viên viết một số câu lệnh ngắn gọn nhưng mạnh mẽ. Những đoạn mã này có thể hữu ích, khó hiểu hoặc chỉ đơn giản là thú vị! Trong bài viết này, chúng ta sẽ khám phá một số câu lệnh JavaScript thú vị và cùng phân tích chúng cho bạn.

1. Hoán đổi hai biến mà không có biến Temp

[a, b] = [b, a];

Phương pháp này sử dụng cấu trúc mảng để hoán đổi giá trị mà không cần biến tạm thời.

2. Kiểm tra xem một số có phải là số chẵn không

const isEven = n => !(n & 1);

Phép toán bitwise AND (&) kiểm tra xem bit ít quan trọng nhất là 1 (lẻ) hay 0 (chẵn).

3. Đảo ngược một chuỗi

const reverseString = str => [...str].reverse().join('');

Toán tử trải rộng (...) chuyển đổi chuỗi thành một mảng, sau đó đảo ngược lại và nối lại thành một chuỗi.

4. Tạo màu Hex ngẫu nhiên

const randomColor = () => `#${Math.floor(Math.random()*0xFFFFFF).toString(16).padStart(6, '0')}`;

Một số ngẫu nhiên được tạo ra và chuyển đổi thành chuỗi hex, đảm bảo chuỗi này luôn dài 6 ký tự.

5. Lấy phần tử cuối cùng của một mảng

const lastItem = arr => arr.at(-1);

.at(-1) lấy phần tử cuối cùng của mảng theo cách rõ ràng và dễ đọc.

6. Làm phẳng một mảng lồng nhau

const flatArray = arr => arr.flat(Infinity);

.flat(Infinity) Đệ quy làm phẳng một mảng có độ sâu bất kỳ.

7. Chuyển đổi một chuỗi thành một số

const toNumber = str => +str;

Toán tử + chuyển đổi một chuỗi thành một số theo cách cực kỳ ngắn gọn.

8. Xóa các phần tử trùng lặp khỏi một mảng

const uniqueArray = arr => [...new Set(arr)];

Set loại bỏ các phần trùng lặp và toán tử lan truyền chuyển đổi chúng trở lại thành một mảng.

9. Tìm giao điểm của hai mảng

const intersection = (a, b) => a.filter(x => b.includes(x));

Nó lọc các phần tử a tồn tại trong b.

10. Xáo trộn một mảng

const shuffle = arr => arr.sort(() => Math.random() - 0.5);

Sắp xếp ngẫu nhiên tạo ra sự xáo trộn đơn giản (mặc dù không phải là cách tối ưu nhất).

11. Lấy dấu thời gian hiện tại

const timestamp = () => Date.now();

Date.now() trả về số mili giây kể từ ngày 1 tháng 1 năm 1970.

12. Giá trị mặc định ngắn mạch

const greet = name => name || 'Guest';

Nếu name là falsy (như null hoặc undefined), 'Guest' thì được sử dụng thay thế.

13. Đếm số lần xuất hiện của một phần tử trong một mảng

const countOccurrences = (arr, val) => arr.reduce((a, v) => v === val ? a + 1 : a, 0);

reduce lặp lại và đếm số lần xuất hiện của val.

14. Lấy một mục ngẫu nhiên từ một mảng

const randomItem = arr => arr[Math.floor(Math.random() * arr.length)];

Math.random() chọn một chỉ mục ngẫu nhiên từ mảng.

15. Chuyển đổi RGB sang Hex

const rgbToHex = (r, g, b) => `#${((1 << 24) | (r << 16) | (g << 8) | b).toString(16).slice(1)}`;

Các phép toán bit và .toString(16) chuyển đổi giá trị RGB sang định dạng hex.

16. Kiểm tra xem một chuỗi có phải là chuỗi Palindrome không

const isPalindrome = str => str === [...str].reverse().join('');

Chuỗi được đảo ngược và so sánh với chuỗi ban đầu.

17. Chuyển đổi Boolean thành Number

const boolToNumber = bool => +bool;

Toán + tử chuyển đổi true thành 1 và false thành 0.

18. Viết hoa chữ cái đầu tiên của một chuỗi

const capitalize = str => str.charAt(0).toUpperCase() + str.slice(1);

Ký tự đầu tiên được chuyển thành chữ hoa và nối với phần còn lại của chuỗi.

19. Xóa khoảng trắng khỏi chuỗi

const trimSpaces = str => str.replace(/\s+/g, '');

Biểu thức chính quy /\s+/g sẽ xóa tất cả các ký tự khoảng trắng.

20. Tạo Boolean ngẫu nhiên

const randomBoolean = () => Math.random() >= 0.5;

Math.random() tạo ra một số từ 0 và 1, trả về true hoặc falsedựa trên ngưỡng.


All Rights Reserved

Viblo
Let's register a Viblo Account to get more interesting posts.