Style code trong Javascript, Nodejs Phần 2

Tiếp theo bài Style code trong Javascript, Nodejs mình tiếp tục hướng dẫn các bạn các đối tượng khác trong javascript, Nodejs

Các bạn chưa theo dõi phần 1 hãy xem lại để nắm bắt thêm những thông tin bổ ích

I. Arrays

1. Sử dụng [] để khai báo một mảng

// Không tốt
const items = new Array();

// Tốt
const items = [];

2. Dùng Array#push để thêm một phần từ vào mảng thay vì thêm trực tiếp

const someStack = [];

// Không tốt
someStack[someStack.length] = 'abracadabra';

// Tốt
someStack.push('abracadabra');

3. Dùng ... (Spreads) để sao chép mảng

// Không tốt
const len = items.length;
const itemsCopy = [];
let i;

for (i = 0; i < len; i++) {
  itemsCopy[i] = items[i];
}

// Tốt
const itemsCopy = [...items];

4. Dùng Array#from để chuyển đổi từ đối tượng sang mảng

const foo = document.querySelectorAll('.foo');
const nodes = Array.from(foo);

II. Destructuring

1. Dùng Destructuring để chuyển giá trị từng thuộc tính của đối tượng vào một biến.

Điều này giúp giảm bớt việc dùng các biến tạm thời để lưu các thuộc tính trong đối tượng.

// Không tốt
function getFullName(user) {
  const firstName = user.firstName;
  const lastName = user.lastName;

  return `${firstName} ${lastName}`;
}

// Tốt
function getFullName(obj) {
  const { firstName, lastName } = obj;
  return `${firstName} ${lastName}`;
}

// Tốt nhất
function getFullName({ firstName, lastName }) {
  return `${firstName} ${lastName}`;
}

2. Dùng destructuring cho mảng

const arr = [1, 2, 3, 4];

// Không tốt
const first = arr[0];
const second = arr[1];

// Tốt
const [first, second] = arr;

3. Dùng destructuring cho nhiều giá trị trả về, không dùng destructuring array.

Cách dùng này giúp chúng ta có thể thêm một thuộc tính mới hoặc sắp xếp thứ tự trả về mà không gây ảnh hưởng cho các hàm khác.

```javascript
// Không tốt
function processInput(input) {
  // then a miracle occurs
  return [left, right, top, bottom];
}

// the caller needs to think about the order of return data
const [left, __, top] = processInput(input);

// Tốt
function processInput(input) {
  // then a miracle occurs
  return { left, right, top, bottom };
}

// the caller selects only the data they need
const { left, right } = processInput(input);
```

III. Strings

1. Sử dụng dầu nháy đơn '' đối với chuỗi.

// Không tốt
const name = "Capt. Janeway";

// Tốt
const name = 'Capt. Janeway';

2. Khi chuỗi dài hơn 100 kí tự nên chia nhiều dòng và nối chuỗi đó lại

3. Ghi chú: Việc áp dụng nối chuỗi nhiều sẽ gây ảnh hưởng tới hiệu năng

// Không tốt
const errorMessage = 'This is a super long error that was thrown because of Batman. When you stop to think about how Batman had anything to do with this, you would get nowhere fast.';

// Không tốt
const errorMessage = 'This is a super long error that was thrown because \
of Batman. When you stop to think about how Batman had anything to do \
with this, you would get nowhere \
fast.';

// Tốt
const errorMessage = 'This is a super long error that was thrown because ' +
  'of Batman. When you stop to think about how Batman had anything to do ' +
  'with this, you would get nowhere fast.';

4. Dùng template thay vì dùng cách nối chuỗi.

Dùng template sẽ giúp chúng ta dể đọc, cú pháp ngắn gọn.

```javascript
// Không tốt
function sayHi(name) {
  return 'How are you, ' + name + '?';
}

// Không tốt
function sayHi(name) {
  return ['How are you, ', name, '?'].join();
}

// Tốt
function sayHi(name) {
  return `How are you, ${name}?`;
}
```

5. Không bao giờ sử dụng eval() cho chuỗi.

Loạt bài hướng dẫn:

Trả lời 3

Your email address will not be published. Required fields are marked *


Style code trong Javascript, Nodejs Phần 3 - kienthuc24.com

Style code trong Javascript, Nodejs Phần 3 - kienthuc24.com

[…] Style code trong Javascript, Nodejs Phần 2 […]

Style code trong Javascript, Nodejs Phần 1 - kienthuc24.com

Style code trong Javascript, Nodejs Phần 1 - kienthuc24.com

[…] Style code trong Javascript, Nodejs Phần 2 […]

Style code trong Javascript, Nodejs Phần 4 - kienthuc24.com

Style code trong Javascript, Nodejs Phần 4 - kienthuc24.com

[…] Style code trong Javascript, Nodejs Phần 2 – kienthuc24.com trong Style code trong Javascript, Nodejs Phần 1 […]