Hướng dẫn what are functions () in javascript? - Các hàm () trong javascript là gì?

Nói chung, một hàm là "chương trình con" có thể được gọi bằng mã bên ngoài (hoặc bên trong trong trường hợp đệ quy) cho hàm. Giống như chính chương trình, một hàm bao gồm một chuỗi các câu lệnh gọi là cơ thể chức năng. Các giá trị có thể được truyền đến một hàm và hàm sẽ trả về một giá trị.

Show

Trong JavaScript, các chức năng là các đối tượng hạng nhất, bởi vì chúng có thể có các thuộc tính và phương thức giống như bất kỳ đối tượng nào khác. Điều phân biệt chúng với các đối tượng khác là các chức năng có thể được gọi. Tóm lại, chúng là đối tượng

const myFunction = function () {
  statements
}
0.

Để biết thêm các ví dụ và giải thích, hãy xem Hướng dẫn JavaScript về các chức năng.

Sự mô tả

Mỗi chức năng trong JavaScript là một đối tượng

const myFunction = function () {
  statements
}
0. Xem
const myFunction = function () {
  statements
}
0 để biết thông tin về các thuộc tính và phương thức của các đối tượng
const myFunction = function () {
  statements
}
0.

Để trả về một giá trị khác với mặc định, một hàm phải có câu lệnh

const myFunction = function () {
  statements
}
4 chỉ định giá trị để trả về. Một hàm không có câu lệnh trả về sẽ trả về một giá trị mặc định. Trong trường hợp hàm tạo được gọi với từ khóa
const myFunction = function () {
  statements
}
5, giá trị mặc định là giá trị của tham số
const myFunction = function () {
  statements
}
6 của nó. Đối với tất cả các chức năng khác, giá trị trả về mặc định là
const myFunction = function () {
  statements
}
7.

Các tham số của lệnh gọi hàm là các đối số của hàm. Các đối số có thể được truyền theo giá trị (trong trường hợp các giá trị nguyên thủy) hoặc theo tham chiếu (trong trường hợp của các đối tượng). Điều này có nghĩa là nếu một hàm chỉ định một tham số loại nguyên thủy, giá trị sẽ không thay đổi bên ngoài hàm. Trong trường hợp tham số loại đối tượng, nếu các thuộc tính của nó bị đột biến, sự thay đổi sẽ tác động bên ngoài hàm. Xem ví dụ sau:

/* Declare the function 'myFunc' */
function myFunc(theObject) {
  theObject.brand = "Toyota";
}

/*
 * Declare variable 'mycar';
 * create and initialize a new Object;
 * assign reference to it to 'mycar'
 */
const mycar = {
  brand: "Honda",
  model: "Accord",
  year: 1998
};

/* Logs 'Honda' */
console.log(mycar.brand);

/* Pass object reference to the function */
myFunc(mycar);

/*
 * Logs 'Toyota' as the value of the 'brand' property
 * of the object, as changed to by the function.
 */
console.log(mycar.brand);

Từ khóa

const myFunction = function () {
  statements
}
6 không đề cập đến chức năng hiện đang thực hiện, vì vậy bạn phải tham khảo các đối tượng
const myFunction = function () {
  statements
}
0 theo tên, ngay cả trong phần thân chức năng.

Xác định chức năng

Có một số cách để xác định các chức năng:

Các tuyên bố chức năng

Có một cú pháp đặc biệt để khai báo các chức năng (xem tuyên bố chức năng để biết chi tiết):

function name([param[, param[, ... param]]]) {
  statements
}

const myFunction = function namedFunction() {
  statements
}
0

Tên chức năng.

const myFunction = function namedFunction() {
  statements
}
1

Tên của một đối số sẽ được chuyển đến hàm.

const myFunction = function namedFunction() {
  statements
}
2

Các tuyên bố bao gồm cơ thể của chức năng.

Biểu thức chức năng

Một biểu thức chức năng tương tự và có cùng cú pháp như một khai báo hàm (xem biểu thức chức năng để biết chi tiết). Một biểu thức chức năng có thể là một phần của biểu thức lớn hơn. Người ta có thể xác định các biểu thức chức năng "được đặt tên" (ví dụ tên của biểu thức có thể được sử dụng trong ngăn xếp cuộc gọi) hoặc các biểu thức chức năng "ẩn danh". Các biểu thức chức năng không được nâng lên vào đầu phạm vi, do đó chúng không thể được sử dụng trước khi chúng xuất hiện trong mã.

function [name]([param[, param[, ... param]]]) {
  statements
}

const myFunction = function namedFunction() {
  statements
}
0

Tên chức năng. Có thể được bỏ qua, trong trường hợp đó hàm được gọi là hàm ẩn danh.

const myFunction = function namedFunction() {
  statements
}
1

Tên của một đối số sẽ được chuyển đến hàm.

const myFunction = function namedFunction() {
  statements
}
2

Các tuyên bố bao gồm cơ thể của chức năng.

Biểu thức chức nănganonymous function expression (the

const myFunction = function namedFunction() {
  statements
}
0 is not used):

const myFunction = function () {
  statements
}

Một biểu thức chức năng tương tự và có cùng cú pháp như một khai báo hàm (xem biểu thức chức năng để biết chi tiết). Một biểu thức chức năng có thể là một phần của biểu thức lớn hơn. Người ta có thể xác định các biểu thức chức năng "được đặt tên" (ví dụ tên của biểu thức có thể được sử dụng trong ngăn xếp cuộc gọi) hoặc các biểu thức chức năng "ẩn danh". Các biểu thức chức năng không được nâng lên vào đầu phạm vi, do đó chúng không thể được sử dụng trước khi chúng xuất hiện trong mã.named function expression:

const myFunction = function namedFunction() {
  statements
}

Tên chức năng. Có thể được bỏ qua, trong trường hợp đó hàm được gọi là hàm ẩn danh.

Dưới đây là một ví dụ về biểu thức chức năng ẩn danh (

const myFunction = function namedFunction() {
  statements
}
0 không được sử dụng):

Cũng có thể cung cấp một tên bên trong định nghĩa để tạo biểu thức chức năng được đặt tên:

(function () {
  statements
})();

Một trong những lợi ích của việc tạo biểu thức chức năng được đặt tên là trong trường hợp chúng tôi gặp phải lỗi, dấu vết ngăn xếp sẽ chứa tên của hàm, giúp dễ dàng tìm thấy nguồn gốc của lỗi.

Như chúng ta có thể thấy, cả hai ví dụ không bắt đầu với từ khóa const myFunction = function namedFunction() { statements } 7. Các câu lệnh liên quan đến các chức năng không bắt đầu với const myFunction = function namedFunction() { statements } 7 là các biểu thức chức năng.

Khi các chức năng chỉ được sử dụng một lần, một mẫu phổ biến là một iife (ngay lập tức được gọi biểu thức chức năng).

function* name([param[, param[, ... param]]]) {
  statements
}

const myFunction = function namedFunction() {
  statements
}
0

Tên chức năng.

const myFunction = function namedFunction() {
  statements
}
1

Tên của một đối số sẽ được chuyển đến hàm.

const myFunction = function namedFunction() {
  statements
}
2

Các tuyên bố bao gồm cơ thể của chức năng.

Biểu thức chức năng

Một biểu thức chức năng tương tự và có cùng cú pháp như một khai báo hàm (xem biểu thức chức năng để biết chi tiết). Một biểu thức chức năng có thể là một phần của biểu thức lớn hơn. Người ta có thể xác định các biểu thức chức năng "được đặt tên" (ví dụ tên của biểu thức có thể được sử dụng trong ngăn xếp cuộc gọi) hoặc các biểu thức chức năng "ẩn danh". Các biểu thức chức năng không được nâng lên vào đầu phạm vi, do đó chúng không thể được sử dụng trước khi chúng xuất hiện trong mã.

function* [name]([param[, param[, ... param]]]) {
  statements
}

const myFunction = function namedFunction() {
  statements
}
0

Tên chức năng. Có thể được bỏ qua, trong trường hợp đó hàm được gọi là hàm ẩn danh.

const myFunction = function namedFunction() {
  statements
}
1

Tên của một đối số sẽ được chuyển đến hàm.

const myFunction = function namedFunction() {
  statements
}
2

Các tuyên bố bao gồm cơ thể của chức năng.

Biểu thức chức năng

Một biểu thức chức năng tương tự và có cùng cú pháp như một khai báo hàm (xem biểu thức chức năng để biết chi tiết). Một biểu thức chức năng có thể là một phần của biểu thức lớn hơn. Người ta có thể xác định các biểu thức chức năng "được đặt tên" (ví dụ tên của biểu thức có thể được sử dụng trong ngăn xếp cuộc gọi) hoặc các biểu thức chức năng "ẩn danh". Các biểu thức chức năng không được nâng lên vào đầu phạm vi, do đó chúng không thể được sử dụng trước khi chúng xuất hiện trong mã.

([param[, param]]) => {
  statements
}

param => expression

(param) => expression

const myFunction = function namedFunction() {
  statements
}
1

Tên của một đối số. Đối số không cần phải được chỉ định với

(function () {
  statements
})();
9. Đối với chính xác một đối số, dấu ngoặc đơn không bắt buộc. (như
function* name([param[, param[, ... param]]]) {
  statements
}
0)

const myFunction = function namedFunction() {
  statements
}
2 hoặc
function* name([param[, param[, ... param]]]) {
  statements
}
2

Nhiều tuyên bố cần được đặt trong ngoặc. Một biểu thức duy nhất không yêu cầu dấu ngoặc. Biểu thức cũng là giá trị trả về ngầm của hàm.

Hàm tạo chức năng

Lưu ý: Sử dụng hàm tạo

const myFunction = function () {
  statements
}
0 để tạo các chức năng không được khuyến nghị vì nó cần cơ thể chức năng như một chuỗi có thể ngăn chặn một số tối ưu hóa động cơ JS và cũng có thể gây ra các vấn đề khác. Using the
const myFunction = function () {
  statements
}
0 constructor to create functions is not recommended since it needs the function body as a string which may prevent some JS engine optimizations and can also cause other problems.

Vì tất cả các đối tượng khác, các đối tượng

const myFunction = function () {
  statements
}
0 có thể được tạo bằng toán tử
const myFunction = function () {
  statements
}
5:

new Function (arg1, arg2, ... argN, functionBody)

function* name([param[, param[, ... param]]]) {
  statements
}
6

0 hoặc nhiều tên được sử dụng bởi hàm như các tham số chính thức. Mỗi người phải là một định danh JavaScript thích hợp.

function* name([param[, param[, ... param]]]) {
  statements
}
7

Một chuỗi chứa các câu lệnh JavaScript bao gồm cơ thể chức năng.

Gọi hàm xây dựng

const myFunction = function () {
  statements
}
0 làm hàm (không sử dụng toán tử
const myFunction = function () {
  statements
}
5) có tác dụng tương tự như gọi nó như một hàm tạo.

Các hàm tạo GeneratorFunction

Lưu ý:

function* [name]([param[, param[, ... param]]]) {
  statements
}
0 không phải là một đối tượng toàn cầu, nhưng có thể được lấy từ thể hiện chức năng của máy phát (xem
function* [name]([param[, param[, ... param]]]) {
  statements
}
0 để biết thêm chi tiết).
function* [name]([param[, param[, ... param]]]) {
  statements
}
0 is not a global object, but could be obtained from generator function instance (see
function* [name]([param[, param[, ... param]]]) {
  statements
}
0 for more detail).

Lưu ý: Sử dụng hàm tạo

function* [name]([param[, param[, ... param]]]) {
  statements
}
0 để tạo các chức năng không được khuyến nghị vì nó cần cơ thể chức năng như một chuỗi có thể ngăn chặn một số tối ưu hóa động cơ JS và cũng có thể gây ra các vấn đề khác. Using the
function* [name]([param[, param[, ... param]]]) {
  statements
}
0 constructor to create functions is not recommended since it needs the function body as a string which may prevent some JS engine optimizations and can also cause other problems.

Như tất cả các đối tượng khác, các đối tượng

function* [name]([param[, param[, ... param]]]) {
  statements
}
0 có thể được tạo bằng toán tử
const myFunction = function () {
  statements
}
5:

function name([param[, param[, ... param]]]) {
  statements
}
0

function* name([param[, param[, ... param]]]) {
  statements
}
6

0 hoặc nhiều tên được sử dụng bởi hàm làm tên đối số chính thức. Mỗi người phải là một chuỗi phù hợp với các quy tắc cho một định danh JavaScript hợp lệ hoặc danh sách các chuỗi đó được phân tách bằng dấu phẩy; Ví dụ

function* [name]([param[, param[, ... param]]]) {
  statements
}
6,
function* [name]([param[, param[, ... param]]]) {
  statements
}
7 hoặc
function* [name]([param[, param[, ... param]]]) {
  statements
}
8.

function* name([param[, param[, ... param]]]) {
  statements
}
7

Một chuỗi chứa các câu lệnh JavaScript bao gồm định nghĩa hàm.

Gọi hàm xây dựng

function* [name]([param[, param[, ... param]]]) {
  statements
}
0 dưới dạng hàm (mà không sử dụng toán tử
const myFunction = function () {
  statements
}
5) có tác dụng tương tự như gọi nó như một hàm tạo.

Tham số chức năng

Tham số mặc định

Các tham số chức năng mặc định cho phép các tham số chính thức được khởi tạo với các giá trị mặc định nếu không có giá trị hoặc

const myFunction = function () {
  statements
}
7 được truyền. Để biết thêm chi tiết, xem các tham số mặc định.

Tham số nghỉ

Cú pháp tham số REST cho phép biểu thị số lượng đối số không xác định dưới dạng một mảng. Để biết thêm chi tiết, xem các tham số REST.

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

Bạn có thể tham khảo các đối số của hàm trong hàm bằng cách sử dụng đối tượng

([param[, param]]) => {
  statements
}

param => expression

(param) => expression
3. Xem đối số.

([param[, param]]) => {
  statements
}

param => expression

(param) => expression
3

Một đối tượng giống như mảng chứa các đối số được truyền cho chức năng hiện đang thực hiện.

([param[, param]]) => {
  statements
}

param => expression

(param) => expression
5

Chức năng hiện đang thực hiện.

([param[, param]]) => {
  statements
}

param => expression

(param) => expression
6

Số lượng đối số được truyền cho hàm.

Xác định chức năng phương thức

Chức năng Getter và Setter

Bạn có thể xác định Getters (Phương thức Accessor) và Setters (Phương thức đột biến) trên bất kỳ đối tượng tích hợp tiêu chuẩn hoặc đối tượng do người dùng xác định hỗ trợ bổ sung các thuộc tính mới. Cú pháp để xác định getters và setters sử dụng cú pháp theo nghĩa đen của đối tượng.

lấy

Liên kết một thuộc tính đối tượng với một hàm sẽ được gọi khi thuộc tính đó được tra cứu.

bộ

Liên kết một thuộc tính đối tượng với một hàm được gọi khi có một nỗ lực để đặt thuộc tính đó.

Phương pháp định nghĩa cú pháp

Trong các chữ cái đối tượng, bạn có thể xác định các phương thức riêng trong cú pháp ngắn hơn, tương tự như getters và setters. Xem định nghĩa phương pháp để biết thêm thông tin.

function name([param[, param[, ... param]]]) {
  statements
}
1

Constructor so với khai báo so với biểu thức

So sánh những điều sau:

Một hàm được xác định với hàm tạo

const myFunction = function () {
  statements
}
0 được gán cho biến
([param[, param]]) => {
  statements
}

param => expression

(param) => expression
8:

function name([param[, param[, ... param]]]) {
  statements
}
2

Tuyên bố chức năng của một hàm có tên

([param[, param]]) => {
  statements
}

param => expression

(param) => expression
8:

function name([param[, param[, ... param]]]) {
  statements
}
3

Biểu thức chức năng của hàm ẩn danh được gán cho biến

([param[, param]]) => {
  statements
}

param => expression

(param) => expression
8:

function name([param[, param[, ... param]]]) {
  statements
}
4

Biểu thức chức năng của hàm có tên

new Function (arg1, arg2, ... argN, functionBody)
1 được gán cho biến
([param[, param]]) => {
  statements
}

param => expression

(param) => expression
8:

function name([param[, param[, ... param]]]) {
  statements
}
5

Sự khác biệt

Tất cả đều làm điều tương tự, với một vài sự khác biệt tinh tế:

Có một sự khác biệt giữa tên hàm và biến mà hàm được gán cho. Tên hàm không thể được thay đổi, trong khi biến hàm được gán cho có thể được chỉ định lại. Tên chức năng chỉ có thể được sử dụng trong cơ thể của chức năng. Cố gắng sử dụng nó bên ngoài cơ thể của chức năng dẫn đến một lỗi (hoặc nhận được một giá trị khác, nếu cùng một tên được khai báo ở nơi khác). Ví dụ:

function name([param[, param[, ... param]]]) {
  statements
}
6

Tên hàm cũng xuất hiện khi hàm được tuần tự hóa thông qua phương thức

new Function (arg1, arg2, ... argN, functionBody)
3 của nó.

Mặt khác, biến mà hàm được gán cho chỉ giới hạn theo phạm vi của nó, được đảm bảo bao gồm phạm vi mà hàm được khai báo.

Như ví dụ

new Function (arg1, arg2, ... argN, functionBody)
4 cho thấy, tên hàm có thể khác với biến mà hàm được gán cho. Họ không có liên quan đến nhau. Một khai báo chức năng cũng tạo ra một biến có cùng tên với tên hàm. Do đó, không giống như các biểu thức được xác định bởi các biểu thức chức năng, các hàm được xác định bởi các khai báo chức năng có thể được truy cập bằng tên của chúng trong phạm vi mà chúng được xác định, cũng như trong cơ thể của chính chúng.

Một hàm được xác định bởi

new Function (arg1, arg2, ... argN, functionBody)
5 sẽ tự động lắp ráp nguồn của nó, có thể quan sát được khi bạn tuần tự hóa nó. Ví dụ:
new Function (arg1, arg2, ... argN, functionBody)
6 đưa ra:

function name([param[, param[, ... param]]]) {
  statements
}
7

Đây là nguồn thực tế được sử dụng để biên dịch hàm. Tuy nhiên, mặc dù hàm tạo

new Function (arg1, arg2, ... argN, functionBody)
7 sẽ tạo chức năng với tên
new Function (arg1, arg2, ... argN, functionBody)
8, tên này không được thêm vào phạm vi của cơ thể. Cơ thể chỉ có quyền truy cập vào các biến toàn cầu. Ví dụ: sau đây sẽ dẫn đến lỗi:

function name([param[, param[, ... param]]]) {
  statements
}
8

Không giống như các hàm được xác định bởi các biểu thức chức năng hoặc bởi hàm tạo

const myFunction = function () {
  statements
}
0, một hàm được xác định bởi khai báo hàm có thể được sử dụng trước khi khai báo hàm. Ví dụ:

function name([param[, param[, ... param]]]) {
  statements
}
9

Một hàm được xác định bởi một biểu thức chức năng hoặc bởi một khai báo chức năng kế thừa phạm vi hiện tại. Đó là, chức năng tạo thành một đóng cửa. Mặt khác, một hàm được xác định bởi hàm tạo

const myFunction = function () {
  statements
}
0 không kế thừa bất kỳ phạm vi nào ngoài phạm vi toàn cầu (tất cả các chức năng kế thừa).

function [name]([param[, param[, ... param]]]) {
  statements
}
0

Các hàm được xác định bởi các biểu thức chức năng và khai báo hàm chỉ được phân tích cú pháp một lần, trong khi các hàm được xác định bởi hàm tạo

const myFunction = function () {
  statements
}
0 thì không. Đó là, chuỗi cơ thể chức năng được truyền đến hàm tạo
const myFunction = function () {
  statements
}
0 phải được phân tích cú pháp mỗi khi hàm tạo được gọi. Mặc dù một biểu thức chức năng tạo ra đóng cửa mỗi lần, cơ thể chức năng không được sửa chữa, do đó các biểu thức chức năng vẫn nhanh hơn
function name([param[, param[, ... param]]]) {
  statements
}
03. Do đó, hàm tạo
const myFunction = function () {
  statements
}
0 thường nên tránh bất cứ khi nào có thể.

Tuy nhiên, cần lưu ý rằng các biểu thức chức năng và khai báo hàm được lồng trong hàm được tạo bằng cách phân tích chuỗi của chuỗi xây dựng

new Function (arg1, arg2, ... argN, functionBody)
7 không được phân tích cú pháp nhiều lần. Ví dụ:

function [name]([param[, param[, ... param]]]) {
  statements
}
1

Một tuyên bố chức năng rất dễ dàng (và thường vô tình) đã biến thành một biểu thức chức năng. Một tuyên bố chức năng không còn là một khi nó:

  • trở thành một phần của một biểu thức
  • không còn là "phần tử nguồn" của một hàm hoặc chính tập lệnh. "Phần tử nguồn" là một câu lệnh không được lồng trong tập lệnh hoặc cơ thể hàm:

function [name]([param[, param[, ... param]]]) {
  statements
}
2

Ví dụ

function [name]([param[, param[, ... param]]]) {
  statements
}
3

Các chức năng cấp khối

Trong chế độ nghiêm ngặt, bắt đầu bằng ES2015, các chức năng bên trong các khối hiện được phân chia đến khối đó. Trước ES2015, các chức năng cấp khối đã bị cấm ở chế độ nghiêm ngặt.

function [name]([param[, param[, ... param]]]) {
  statements
}
4

Các chức năng cấp khối trong mã không nghiêm ngặt

Trong một từ: Đừng.

Trong mã không nghiêm ngặt, khai báo chức năng bên trong các khối hoạt động kỳ lạ. Ví dụ:

function [name]([param[, param[, ... param]]]) {
  statements
}
5

ES2015 nói rằng nếu

function name([param[, param[, ... param]]]) {
  statements
}
06 là sai, thì
function name([param[, param[, ... param]]]) {
  statements
}
07 không bao giờ được xác định, vì khối không bao giờ thực thi. Tuy nhiên, đó là một phần mới của tiêu chuẩn. Trong lịch sử, điều này đã không được xác định và một số trình duyệt sẽ xác định
function name([param[, param[, ... param]]]) {
  statements
}
07 cho dù khối được thực thi hay không.

Trong chế độ nghiêm ngặt, tất cả các trình duyệt hỗ trợ ES2015 xử lý theo cùng một cách:

function name([param[, param[, ... param]]]) {
  statements
}
07 chỉ được xác định nếu
function name([param[, param[, ... param]]]) {
  statements
}
06 là đúng và chỉ tồn tại trong phạm vi đó của khối ________ 111.

Một cách an toàn hơn để xác định các chức năng một cách có điều kiện là gán một biểu thức chức năng cho một biến:

function [name]([param[, param[, ... param]]]) {
  statements
}
6

Ví dụ

Các chức năng cấp khối

Trong chế độ nghiêm ngặt, bắt đầu bằng ES2015, các chức năng bên trong các khối hiện được phân chia đến khối đó. Trước ES2015, các chức năng cấp khối đã bị cấm ở chế độ nghiêm ngặt.

function [name]([param[, param[, ... param]]]) {
  statements
}
7

Các chức năng cấp khối trong mã không nghiêm ngặt

function [name]([param[, param[, ... param]]]) {
  statements
}
8

Trong một từ: Đừng.

Trong mã không nghiêm ngặt, khai báo chức năng bên trong các khối hoạt động kỳ lạ. Ví dụ:

function [name]([param[, param[, ... param]]]) {
  statements
}
9

ES2015 nói rằng nếu

function name([param[, param[, ... param]]]) {
  statements
}
06 là sai, thì
function name([param[, param[, ... param]]]) {
  statements
}
07 không bao giờ được xác định, vì khối không bao giờ thực thi. Tuy nhiên, đó là một phần mới của tiêu chuẩn. Trong lịch sử, điều này đã không được xác định và một số trình duyệt sẽ xác định
function name([param[, param[, ... param]]]) {
  statements
}
07 cho dù khối được thực thi hay không.

Trong chế độ nghiêm ngặt, tất cả các trình duyệt hỗ trợ ES2015 xử lý theo cùng một cách: function name([param[, param[, ... param]]]) { statements } 07 chỉ được xác định nếu function name([param[, param[, ... param]]]) { statements } 06 là đúng và chỉ tồn tại trong phạm vi đó của khối ________ 111.

Một cách an toàn hơn để xác định các chức năng một cách có điều kiện là gán một biểu thức chức năng cho một biến:
Trả về một số được định dạng
# sec-function-definitions

Hàm sau trả về một chuỗi chứa biểu diễn được định dạng của một số được đệm với các số không dẫn đầu.

Các câu sau đây gọi hàm Padzeros.

Xác định xem một hàm tồn tại

3 loại chức năng trong JavaScript là gì?

Có 3 cách viết một chức năng trong JavaScript: Tuyên bố chức năng.Biểu thức chức năng.Hàm mũi tên.Function Declaration. Function Expression. Arrow Function.

() => Có nghĩa là gì trong javascript?

Đây là một tính năng mới được giới thiệu trong ES6 và được gọi là hàm mũi tên.Phần bên trái biểu thị đầu vào của một hàm và phần bên phải đầu ra của hàm đó.arrow function. The left part denotes the input of a function and the right part the output of that function.

Tất cả các chức năng trong JavaScript là gì?

JavaScript |Đối tượng toán học ..
JavaScript Math Random () Phương thức ..
Phương pháp toán học javascript
Hàm javascript math.ceil () ..
Phương pháp JavaScript Math () Phương pháp ..
Phương thức JavaScript Math () log () ..
Phương thức toán học javascript max () ..
Phương pháp toán học javascript min () ..

Tại sao các chức năng được sử dụng trong JavaScript?

Trong JavaScript, một hàm cho phép bạn xác định một khối mã, đặt tên cho nó và sau đó thực thi nó bao nhiêu lần tùy thích.Một hàm JavaScript có thể được xác định bằng cách sử dụng từ khóa chức năng.allows you to define a block of code, give it a name and then execute it as many times as you want. A JavaScript function can be defined using function keyword.