Đối tượng đối số trong JavaScript là gì?

Bạn có nhớ bộ dụng cụ sơ cứu trong chương 3 không? . Việc đóng gói hoặc chia khối như vậy, trong đó chúng ta coi một bộ sưu tập là số ít, là một phần quan trọng trong cách con người chúng ta đối phó với thông tin phức tạp, cả bằng ngôn ngữ và trí nhớ. Khi có nhu cầu, chúng ta có thể xem xét các yếu tố tạo nên bộ. thuốc sát trùng, cao dán, băng, v.v.

Trong một hàm, bạn có thể sử dụng biến arguments để nhận danh sách dạng mảng gồm tất cả các đối số được truyền vào hàm

Bạn không cần xác định trước. Đó là một đối tượng JavaScript gốc

function add (num1, num2) {

	// logs [num1, num2] (with their values)
	console.log(arguments);

	// logs the value of `num1`
	console.log(arguments[0]);

	// logs the value of `num2`
	console.log(arguments[1]);

	// ...

}

Điều này đặc biệt hữu ích nếu bạn muốn cho phép truyền số lượng đối số không giới hạn vào hàm của mình

Giả sử bạn muốn có thể chuyển số lượng không giới hạn vào add() và cộng chúng lại với nhau. Biến arguments là hoàn hảo cho việc này

Hãy nhớ rằng, arguments giống như mảng nhưng không thực sự là một mảng. Để sử dụng các phương thức mảng như Array.forEach() với nó, bạn cần chuyển đổi nó thành một mảng với phương thức Array.from()

function add () {

	// Set a starting total
	let total = 0;

	// Add each number to the total
	Array.from(arguments).forEach(function (num) {
		total += num;
	});

	// Return to the total
	return total;

}

Trong ví dụ trên, chúng tôi đang xác định một biến mặc định total với giá trị

function add () {

	// Set a starting total
	let total = 0;

	// Add each number to the total
	Array.from(arguments).forEach(function (num) {
		total += num;
	});

	// Return to the total
	return total;

}
0. Chúng tôi sử dụng Array.from() để chuyển đổi arguments thành một mảng và một vòng lặp Array.forEach() để lặp lại từng đối số và thêm nó vào total. Sau đó, chúng tôi trả lại total

Nếu ai đó bỏ qua mà không có đối số, nó sẽ trả về

function add () {

	// Set a starting total
	let total = 0;

	// Add each number to the total
	Array.from(arguments).forEach(function (num) {
		total += num;
	});

	// Return to the total
	return total;

}
0. Nếu không, họ có thể thêm một hoặc nhiều số với nhau

Nếu một hàm được gọi với các đối số bị thiếu (ít hơn so với khai báo), các giá trị bị thiếu được đặt thành undefined

Đôi khi điều này có thể chấp nhận được, nhưng đôi khi tốt hơn là gán giá trị mặc định cho tham số


Giá trị tham số mặc định

ES6 cho phép các tham số chức năng có giá trị mặc định

Thí dụ

Nếu y không được thông qua hoặc không xác định, thì y = 10

hàm myFunction(x, y = 10) {
trả lại x + y;
}
chức năng của tôi (5);

Tự mình thử »


Thông số phần còn lại chức năng

Tham số còn lại (. ) cho phép một hàm coi số lượng đối số không xác định là một mảng

Thí dụ

tổng hàm (. lập luận) {
để tổng = 0;
for (let arg of args) sum += arg;
trả lại tổng;
}

đặt x = tổng(4, 9, 16, 25, 29, 100, 66, 77);

Tự mình thử »



Đối tượng đối số

Các hàm JavaScript có một đối tượng tích hợp được gọi là đối tượng đối số

Đối tượng đối số chứa một mảng các đối số được sử dụng khi hàm được gọi (gọi)

Bằng cách này, bạn có thể chỉ cần sử dụng một hàm để tìm (ví dụ) giá trị cao nhất trong danh sách các số

Thí dụ

x = findMax(1, 123, 500, 115, 44, 88);

hàm findMax() {
đặt max = -Infinity;
for (hãy i = 0; i < đối số. chiều dài;
if (arguments[i] > max) {
max = đối số [i];
}
}
trả lại tối đa;
}

Tự mình thử »

Hoặc tạo một hàm để tính tổng tất cả các giá trị đầu vào

Thí dụ

x = sumAll(1, 123, 500, 115, 44, 88);

hàm sumAll() {
để tổng = 0;
for (hãy i = 0; i < đối số. chiều dài;
tổng += đối số[i];
}
trả lại tổng;
}

Tự mình thử »

Nếu một hàm được gọi với quá nhiều đối số (nhiều hơn so với khai báo), những đối số này có thể được truy cập bằng cách sử dụng đối tượng đối số


Các đối số được truyền theo giá trị

Tham số, trong lời gọi hàm, là đối số của hàm

Các đối số JavaScript được truyền theo giá trị. Hàm chỉ biết các giá trị, không biết vị trí của đối số

Đối số đối tượng trong JavaScript là gì?

Đối tượng đối số là một biến cục bộ có sẵn trong tất cả các hàm không phải mũi tên . Bạn có thể tham khảo đối số của hàm bên trong hàm đó bằng cách sử dụng đối tượng đối số của nó. Nó có các mục cho mỗi đối số mà hàm được gọi, với chỉ mục của mục đầu tiên là 0.

Đối số trong ví dụ JavaScript là gì?

Đối số là đối tượng cục bộ của hàm . Bạn có thể coi nó như một biến cục bộ có sẵn với tất cả các hàm theo mặc định ngoại trừ các hàm mũi tên trong JavaScript. Đối tượng này (đối số) được sử dụng để truy cập tham số được truyền cho hàm. Nó chỉ có sẵn trong một chức năng.

Làm cách nào để truy cập đối tượng đối số trong JavaScript?

Đối tượng đối số chỉ khả dụng bên trong các hàm không phải mũi tên . Mặc dù nó không phải là một mảng, nhưng chúng ta có thể truy cập các phần tử bằng cách sử dụng chỉ mục và nó có thuộc tính độ dài chứa số lượng đối số được truyền cho hàm.

Đối tượng là đối số chức năng là gì?

Để truyền một đối tượng làm đối số, chúng ta viết tên đối tượng làm đối số trong khi gọi hàm giống như cách chúng ta thực hiện với các biến khác. Syntax: function_name(object_name); Example: In this Example there is a class which has an integer variable 'a' and a function 'add' which takes an object as argument.