Trong chương trình trên, chúng tôi đã sử dụng thuộc tính độ dài để tìm số lượng tham số bên trong
func.length
3 và func.length
4func.length
3 không có bất kỳ tham số nào nên func.length
6 trả về 0. Có hai tham số func.length
7 và func.length
8 trong func.length
9 , vì vậy // function definition
function func[] {}
// finding number of parameters inside func[]
console.log[func.length];
// function definition
function func1[a, b] {}
// finding the number of parameters inside func1[]
console.log[func1.length];
0 trả về 2ví dụ 2. Thuộc tính chiều dài với Mảng đối số
Thuộc tính
func.length
9 trả về 0 khi một mảng đối số được liệt kê bên trong hàm. Ví dụ________số 8đầu ra
0
Trong ví dụ trên, một mảng đối số được liệt kê bên trong
// function definition
function func[] {}
// finding number of parameters inside func[]
console.log[func.length];
// function definition
function func1[a, b] {}
// finding the number of parameters inside func1[]
console.log[func1.length];
2. Vì vậy, // function definition
function func[] {}
// finding number of parameters inside func[]
console.log[func.length];
// function definition
function func1[a, b] {}
// finding the number of parameters inside func1[]
console.log[func1.length];
3 trả về 0ví dụ 3. thuộc tính chiều dài với giá trị tham số mặc định
Thuộc tính
func.length
9 loại trừ các tham số còn lại và chỉ tính các tham số cho đến tham số đầu tiên có giá trị mặc định. Ví dụfunc.length
2đầu ra
func.length
3Trong chương trình trên,
// function definition
function func[] {}
// finding number of parameters inside func[]
console.log[func.length];
// function definition
function func1[a, b] {}
// finding the number of parameters inside func1[]
console.log[func1.length];
5 bỏ qua func.length
8 có giá trị mặc định và // function definition
function func[] {}
// finding number of parameters inside func[]
console.log[func.length];
// function definition
function func1[a, b] {}
// finding the number of parameters inside func1[]
console.log[func1.length];
7 xuất hiện sau giá trị mặc định. Vì vậy, phương thức trả về 1 các đối số. thuộc tính độ dài cung cấp số lượng đối số thực sự được truyền cho một hàm. Giá trị này có thể nhiều hơn hoặc ít hơn số lượng của tham số đã xác định [xem
func.length
1]ví dụ
Sử dụng func.length
2
func.length
Trong ví dụ này, chúng tôi định nghĩa một hàm có thể cộng hai hoặc nhiều số lại với nhau
func.length
7Lưu ý sự khác biệt giữa
func.length
1 và đối số. chiều dàithông số kỹ thuật
Sự chỉ rõTính tương thích của trình duyệt web
Bảng tương thích trên trang này được tạo từ dữ liệu có cấu trúc. Nếu bạn muốn đóng góp cho dữ liệu, vui lòng xem https. //github. com/mdn/browser-compat-data và gửi yêu cầu kéo cho chúng tôi
Thuộc tính
func.length
2 cung cấp số lượng đối số thực sự được truyền cho một hàm. Giá trị này có thể nhiều hơn hoặc ít hơn số lượng của tham số đã xác định [xem func.length
5]. Ví dụ, đối với chức năng dưới đâyfunc.length
8func.length
6 trả về func.length
7, bởi vì func.length
8 khai báo ba tham số hình thức. Tuy nhiên, func.length
9 ghi nhật ký func.length
0, vì func.length
8 được gọi với năm đối số. Tương tự, func.length
2 ghi nhật ký func.length
20, vì func.length
8 được gọi với một đối số 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
func.length
5Đô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
Ví dụ
Nếu y không được thông qua hoặc không xác định, thì y = 10
function myFunction[x, y = 10] {
return x + y;
}
myFunction[
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
Ví dụ
hàm tổng[. args] {
let sum = 0;
for [let args of args] sum += arg;
return sum;
}
đặ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ố
Ví dụ
x = findMax[1, 123, 500, 115, 44, 88];
function findMax[] {
let max = -Infinity;
for [let i = 0; i < đối số. chiều dài;
if [arguments[i] > max] {
max = arguments[i];
}
}
return max;
}
Hoặc tạo một hàm để tính tổng tất cả các giá trị đầu vào
Ví dụ
x = sumAll[1, 123, 500, 115, 44, 88];
function sumAll[] {
let sum = 0;
for [let i = 0; i < đối số. chiều dài;
sum += arguments[i];
}
return sum;
}
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
Đố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ố