Tôi có một chức năng trong JavaScript:
function alertMe[$a]
{
alert[$a];
}
Mà tôi có thể thực hiện như thế này:
//define the function
function alertMe[a] {
//return the wrapped function
return function [] {
alert[a];
}
}
//declare the variable
var z = alertMe["Hello"];
//invoke now
z[];
0Tôi muốn làm là gán
//define the function
function alertMe[a] {
//return the wrapped function
return function [] {
alert[a];
}
}
//declare the variable
var z = alertMe["Hello"];
//invoke now
z[];
1 với tham số //define the function
function alertMe[a] {
//return the wrapped function
return function [] {
alert[a];
}
}
//declare the variable
var z = alertMe["Hello"];
//invoke now
z[];
2 cho một biến //define the function
function alertMe[a] {
//return the wrapped function
return function [] {
alert[a];
}
}
//declare the variable
var z = alertMe["Hello"];
//invoke now
z[];
3 và có thể thực hiện điều này sau này bằng cách làm một cái gì đó như //define the function
function alertMe[a] {
//return the wrapped function
return function [] {
alert[a];
}
}
//declare the variable
var z = alertMe["Hello"];
//invoke now
z[];
4.
Hỏi ngày 15 tháng 10 năm 2011 lúc 6:39Oct 15, 2011 at 6:39
1
Tôi muốn thêm bình luận làm câu trả lời
Mã số
//define the function
function alertMe[a] {
//return the wrapped function
return function [] {
alert[a];
}
}
//declare the variable
var z = alertMe["Hello"];
//invoke now
z[];
Đã trả lời ngày 15 tháng 10 năm 2011 lúc 6:53Oct 15, 2011 at 6:53
DeeptechtonsdeepechtonsDeeptechtons
10,8K25 Huy hiệu vàng95 Huy hiệu bạc175 Huy hiệu Đồng25 gold badges95 silver badges175 bronze badges
2
Chỉ cần xây dựng chức năng bạn cần và lưu trữ nó trong một biến:
var func = function[] { alertMe["Hello"] };
// and later...
func[];
Bạn thậm chí có thể tạo một chức năng để xây dựng các chức năng của mình nếu bạn muốn thay đổi chuỗi:
function buildIt[message] {
return function[] { alertMe[message] };
}
var func1 = buildIt["Hello"];
var func2 = buildIt["Pancakes"];
// And later...
func1[]; // says "Hello"
func2[]; // says "Pancakes"
Đã trả lời ngày 15 tháng 10 năm 2011 lúc 6:52Oct 15, 2011 at 6:52
MU quá ngắn quá ngắnmu is too short
417K69 Huy hiệu vàng817 Huy hiệu bạc778 Huy hiệu đồng69 gold badges817 silver badges778 bronze badges
1
Bạn nên sử dụng Eval để thực hiện chức năng đã lưu. Ví dụ:
var func = "alertMe['Hello']";
eval[func];
Đã trả lời ngày 15 tháng 10 năm 2011 lúc 6:46Oct 15, 2011 at 6:46
Tran Dinh Thoaitran Dinh thoaiTran Dinh Thoai
7141 Huy hiệu vàng7 Huy hiệu bạc21 Huy hiệu đồng1 gold badge7 silver badges21 bronze badges
1
Trong hướng dẫn này, chúng tôi sẽ học cách gán một hàm cho một biến trong JavaScript. Hàm là khối mã mà chúng ta có thể sử dụng lại nhanh chóng, thường chỉ bằng cách thực hiện cuộc gọi chức năng. Có hai cách để khai báo một hàm trong JavaScript, một là hàm được đặt tên và một cách khác là một hàm ẩn danh.
Hầu hết các lập trình viên JavaScript đều quen thuộc với hàm tên và người dùng có thể theo dõi cú pháp dưới đây để khai báo chức năng được đặt tên.
function function_name[] { //function body }
Trong cú pháp trên, người dùng có thể thấy rằng, chúng ta có thể tạo một định nghĩa hàm với từ khóa chức năng và theo sau theo tên chức năng.
Bây giờ, điều gì sẽ xảy ra nếu chúng ta muốn gán toàn bộ chức năng cho biến làm biểu thức? Ở đây, chúng tôi có 2 cách khác nhau để đạt được mục tiêu của mình.
Tạo hàm ẩn danh
Tạo hàm mũi tên
Tạo hàm ẩn danh
Tên hàm ẩn danh cho thấy rằng chúng tôi đang khai báo chức năng mà không có danh tính của nó có nghĩa là tên của nó.anonymous function name suggests that we are declaring the function without its identity means its name.
Đó là cách đầu tiên để gán hàm cho biến.
Tạo hàm ẩn danh hoạt động như một biểu thức và biên dịch khi thực thi mã đến dòng hàm và hàm được đặt tên biên dịch khi bắt đầu thực thi mã.
Cú pháp
Các lập trình viên có thể tuân theo cú pháp dưới đây để liên kết hàm ẩn danh với biến.
var a = function [ parameters ] { // code to be executed }
Trong cú pháp trên, người dùng có thể thấy rằng chúng tôi đã gán biểu thức của một hàm ẩn danh cho biến ‘A. Hơn nữa, chúng ta có thể gọi chức năng bằng cách sử dụng biến ‘A, và truyền các tham số.
Thí dụ
Trong ví dụ dưới đây, chúng tôi sẽ tạo một hàm ẩn danh và gán nó cho biến dưới dạng biểu thức. Sau đó, chúng tôi sẽ gọi chức năng ẩn danh bằng cách sử dụng biến. Ngoài ra, chúng tôi sẽ học cách vượt qua các tham số bên trong hàm ẩn danh.
JavaScript Anonymous Functions.
We could assign the function to a variable
var a = function [ x, y ] { return x + y; } let result = a[3, 5]; document.getElementById["func"].innerHTML = "var a = " + a document.getElementById["demo"].innerHTML = "a[3, 5] = " + result;
Trong đầu ra ở trên, người dùng có thể thấy rằng nó hiển thị kết quả được trả về từ cuộc gọi chức năng bằng cách sử dụng biến ‘A.
Tạo hàm mũi tên
Tên hàm ẩn danh cho thấy rằng chúng tôi đang khai báo chức năng mà không có danh tính của nó có nghĩa là tên của nó.
Đó là cách đầu tiên để gán hàm cho biến.ES6.
Tạo hàm ẩn danh hoạt động như một biểu thức và biên dịch khi thực thi mã đến dòng hàm và hàm được đặt tên biên dịch khi bắt đầu thực thi mã.var, let, or const keywords and assign the function expression to that. However, creating a variable with the const keyword is recommended to assign the function as the function expression always remains constant.
Cú pháp
Các lập trình viên có thể tuân theo cú pháp dưới đây để liên kết hàm ẩn danh với biến.
Trong cú pháp trên, người dùng có thể thấy rằng chúng tôi đã gán biểu thức của một hàm ẩn danh cho biến ‘A. Hơn nữa, chúng ta có thể gọi chức năng bằng cách sử dụng biến ‘A, và truyền các tham số.Thí dụ
Thí dụ
Trong ví dụ dưới đây, chúng tôi sẽ tạo một hàm ẩn danh và gán nó cho biến dưới dạng biểu thức. Sau đó, chúng tôi sẽ gọi chức năng ẩn danh bằng cách sử dụng biến. Ngoài ra, chúng tôi sẽ học cách vượt qua các tham số bên trong hàm ẩn danh.
JavaScript Arrow Functions.
let demoOutput = document.getElementById["demo1"]; const func = [x, y, z] => { return x + y + z; } let result = func[10, 502, 340]; document.getElementById["demo1"].innerHTML = "const func =" + func; document.getElementById["demo2"].innerHTML = "func[ 10, 502, 340 ] =" + result;We assign arrow function to a variable func.
Trong đầu ra ở trên, người dùng có thể thấy rằng nó hiển thị kết quả được trả về từ cuộc gọi chức năng bằng cách sử dụng biến ‘A.
Phương pháp thứ hai để gán hàm cho biến là hàm mũi tên. Nó tương tự như cách tiếp cận trên, nhưng sự khác biệt là chúng ta sẽ tạo một hàm ẩn danh mà không cần sử dụng từ khóa ‘chức năng và sử dụng một mũi tên thay thế.
Hàm mũi tên là cú pháp ngắn nhất để khai báo chức năng trong JavaScript và nó làm cho các nhiệm vụ của các lập trình viên dễ dàng để viết hàm. Đây là phiên bản mới nhất của hàm ẩn danh như được giới thiệu trong ES6.
Các lập trình viên có thể tạo một biến duy nhất bằng cách sử dụng các từ khóa VAR, LET hoặc const và gán biểu thức chức năng cho đó. Tuy nhiên, việc tạo một biến với từ khóa Const được khuyến nghị gán hàm vì biểu thức hàm luôn không đổi.
Người dùng có thể theo dõi cú pháp dưới đây để viết biểu thức cho hàm mũi tên.
- ________số 8
- Trong cú pháp trên, người dùng có thể thấy cách chúng tôi khai báo biểu thức chức năng mũi tên mà không cần sử dụng từ khóa chức năng.
- Trong ví dụ dưới đây, chúng tôi sẽ tạo chức năng mũi tên với các tham số. Ngoài ra, chúng tôi sẽ gán nó cho biến và gọi thông qua biến.
- Trong đầu ra ở trên, người dùng có thể thấy rằng nó in bất kỳ kết quả nào trả về chức năng mũi tên khi chúng ta gọi nó bằng cách sử dụng biến.
- Sự kết luận
- Chúng tôi đã học được hai cách khác nhau để gán biểu thức chức năng cho biến. Cách tiếp cận đầu tiên là sử dụng hàm ẩn danh, cũng có thể trong ES5. Trong ES6, hàm mũi tên được giới thiệu để tạo hàm ẩn danh và gán nó cho biến.
- Nên sử dụng hàm mũi tên vì nó là phiên bản ngắn hơn của hàm ẩn danh.
- Cập nhật vào ngày 14-tháng 1-2022 13:18:22
- Câu hỏi và câu trả lời liên quan
- Chúng ta có thể gán một tham chiếu đến một biến trong Python không?
- Làm thế nào chúng ta có thể gán một giá trị bit làm số cho biến người dùng?
- Làm thế nào chúng ta có thể sử dụng câu lệnh SET để gán kết quả chọn cho biến người dùng MySQL?
- Cách gán tham chiếu đến một biến trong C#
- Làm cách nào để kiểm tra xem biến JavaScript là loại chức năng?
- Làm thế nào để xác định biến toàn cầu trong hàm JavaScript?
- Làm cách nào để gán giá trị từ điển cho một biến trong Python?