Tối ưu hóa qua các hàm tích hợp sẵn trong JavaScript
Giả sử một lập trình viên kiểm tra xem
trong mảng có số 3 không:
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
let exists = false;
for (let elem of arr) {
if (elem === 3) {
exists = true;
break;
}
}
console.log(exists);
Tôi khẳng định rằng có điều gì đó không ổn với mã này.
Có gì không ổn chứ, chúng ta thoát khỏi vòng lặp
sau khi tìm thấy số 3 rồi mà? Vấn đề là,
các hàm tích hợp sẵn trong JavaScript luôn
hoạt động nhanh hơn mã tự viết tương đương.
Trong trường hợp của chúng ta, tồn tại hàm includes
giải quyết nhiệm vụ đặt ra - và cần phải
sử dụng chính hàm này:
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
console.log(arr.includes(3));
Bài học: Trước khi giải quyết một nhiệm vụ, bắt buộc phải kiểm tra xem có hàm tích hợp sẵn nào trong JavaScript để giải quyết nó không.
Đoạn mã sau kiểm tra xem một chuỗi
có bắt đầu bằng 'http' không.
Hãy thực hiện tối ưu hóa:
let str = 'http://code.mu';
if (str[0] + str[1] + str[2] + str[3] === 'http') {
console.log('+++');
} else {
console.log('---');
}
Đoạn mã sau điền vào một mảng với một giá trị xác định. Hãy thực hiện tối ưu hóa:
let arr = fillArr('x', 5);
console.log(arr);
function fillArr(val, amount) {
let arr = [];
for (let i = 1; i <= amount; i++) {
arr.push(val);
}
return arr;
}