Default Parameter Values trong JavaScript: Tận dụng tính năng mạnh mẽ để tối ưu hóa mã nguồn

Tận dụng Default Parameter Values trong JavaScript để tối ưu mã nguồn và xử lý các giá trị không xác định trong các hàm.

thumnail

Khái niệm về Default Parameter Values là một tính năng mới được giới thiệu trong phiên bản Javascript ES6. Điều này cho phép chúng mình cung cấp giá trị mặc định cho các tham số cảu function. Hãy lấy một ví dụ:

function sum(x = 3, y = 5) {

    // return sum
    return x + y;
}

console.log(sum(5, 15));  // 20 
console.log(sum(7));        // 12
console.log(sum());          // 8

Trong ví dụ trên, giá trị mặc định của x là 3 và của y là 5.
  • sum(5, 15): Khi cả hai đối số được truyền vào, x nhận 5y nhận 15.
  • sum(7): Khi 7 được truyền vào sum() function, x nhận 7y nhận giá trị mặc định là 5.
  • sum(): Khi không có đối số được truyền vào hàm sum(), x nhận giá trị mặc định là 3y nhận giá trị mặc định là 5.

How default arguments work in JavaScript

Sử dụng Expressions như là Default Values

Cũng có thể cung cấp các expressions làm default values.

Ví dụ: Truyền tham số là Default Values

function sum(x = 1, y = x,  z = x + y) {
    console.log( x + y + z );
}

sum(); // 4

Trong đoạn code trên:
  • Default value của x1.
  • Default value của y được gán bằng x.
  • Default value của z là tổng của xy.
Nếu bạn tham chiếu đến tham số chưa được khởi tạo, bạn sẽ gặp lỗi. Ví dụ

function sum( x = y, y = 1 ) {
    console.log( x + y);
}

sum(); 
// ReferenceError: Cannot access 'y' before initialization

Ví dụ 2: Truyền giá trị là hàm làm Default Value.

// using a function in default value expression

const sum = () => 15;

const calculate = function( x, y = x * sum() ) {
    return x + y;
}

const result = calculate(10);
console.log(result);            // 160

Trong đoạn chương trình trên,
  • 10 được truyền vào hàm calculate().
  • x trở thành 10y trở thành 150 (hàm sum() trả về 15).
  • Kết quả sẽ là 160.

Truyền giá trị undefined

Trong Javascript, khi bạn truyền undefined cho hàm có default value thì function đó sẽ lấy giá trị mặc định. Ví dụ

function test(x = 1) {
  console.log(x);
}

// passing undefined
// takes default value 1
test(undefined); // 1

No comments:

Powered by Blogger.