Một số thủ thuật trong JavaScript

Dưới đây là một vài thủ thuật trong JavaScript mà mình đã sưu tầm và tìm hiểu được. Hi vọng sẽ giúp các bạn tối ưu code trong Javascript.

Toán tử !!

Sử dụng toán tử !! sẽ giúp chúng ta kiểm tra được một vài giá trị đặc biệt như 0, null, "", undefined, NaN. Khi đặt !! trước các giá trị trên, thì sẽ trả về false, ngược lại sẽ trả về true. Ví dụ:

function test(demo) {
	console.log(!!demo);
}
 
test(1); 
// true
test(0); 
// false

Toán tử +

Toán tử này giúp ta chuyển 1 chuỗi các số (string) sang number. Hoặc có thể kiểm tra xem chuỗi đó có phải là một chuỗi số hay không. Bởi vì hàm sẽ trả về NaN đối với các chuỗi có chứa kí tự không phải số.

function test(demo) {
	console.log(+demo);
}
 
test("123");
// 123
test("hello");
// NaN

Toán tử ||

Đối với toán tử ||, mục đích là để chèn giá trị mặc định như là tham số thứ hai. Giả sử tham số đầu tiên trả về false thì tham số thứ hai sẽ được sử dụng như là một giá trị mặc định.

var a = null || 1;
// a = 1

Sử dụng vòng lặp đối với mảng

Chúng ta thường có thói quen khi chạy một vòng lặp đối với mảng như sau:

var array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
for (var i = 0; i < array.length; i++) {
	console.log(array[i]);
}

Nếu như làm như vậy, cứ ứng với một vòng lặp sẽ phải tính lại độ rộng của mảng. Như vậy sẽ ảnh hưởng tới hiệu suất của hệ thống. Thay vì thế, chúng ta có thể khởi tạo một biến gán giá trị là độ rộng của mảng, từ đó sẽ dễ dàng hơn trong vòng lặp.

var array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
var length = array.length;
for (var i = 0; i < length; i++) {
	console.log(array[i]);
}

Loại bỏ n thành phần cuối của mảng

Giả sử chúng ta có 1 mảng gồm 10 phần tử từ 1 đến 10. Để loại bỏ n (với n < độ rộng của mảng) phần tử cuối cùng của mảng chúng ta chỉ cần làm như sau:

var array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
array.length -= 3;
console.log(array);
// [1, 2, 3, 4, 5, 6 ,7]

Gộp các mảng

Sử dụng method concat() để gộp 2 mảng lại với nhau.

var array1 = [1, 2, 3, 4, 5];
var array2 = [6, 7, 8, 9, 10];
console.log(array1.concat(array2));
//  [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

Kết luận

Trên đây là một vài thủ thuật mình biết được nhằm tối ưu một phần nào khi sử dụng JavaScript. Hi vọng sẽ giúp các bạn có thêm những thủ thuật trong JavaScript.

 

Nguồn: VIBLO