Cú pháp new Function trong JavaScript – chức năng mới trong js

Cú pháp new Function trong JavaScript là một cách khác để định nghĩa hàm. Cách này ít khi được sử dụng, nhưng đôi khi lại rất hữu ích.

Bạn đang xem: new function in js

Cú pháp new Function trong JavaScript là một cách khác để định nghĩa hàm. Cách này ít khi được sử dụng, nhưng đôi khi lại rất hữu ích.

Cú pháp new Function

Cú pháp new Function để định nghĩa hàm như sau:

let

func

=

new

Function

(

[

arg1

,

arg2

,

...

argN

]

,

functionBody

)

;

Trong đó:

  • [arg1, arg2, ...argN]: là danh sách các tham số truyền vào hàm.
  • functionBody: là string dùng để mô tả hàm.

Ví dụ hàm tính tổng sau nhận vào hai số ab rồi trả về tổng a + b:

let

sum

=

new

Function

(

"a"

,

"b"

,

"return a + b"

)

;

console

.

log

(

sum

(

1

,

2

)

)

;

Hoặc hàm không có tham số truyền vào:

let

sayHi

=

new

Function

(

'console.log("Hello")'

)

;

sayHi

(

)

;

Điểm khác nhau quan trọng giữa cú pháp new Function trong JavaScript với các cách định nghĩa hàm khác là:

  • Cú pháp new Function sử dụng string để định nghĩa thân hàm.
  • Quá trình định nghĩa hàm được thực hiện runtime (trong thời điểm chạy chương trình).

Với tất cả các cách khác, bạn phải định nghĩa hàm ngay từ đầu. Nhưng cú pháp new Function lại có thể chuyển string thành hàm.

Điều này cho phép bạn định nghĩa hàm bằng cách nhận string từ server (hoặc nguồn khác) rồi thực thi hàm:

let

str

=

let

func

=

new

Function

(

str

)

;

func

(

)

;

Mối liên quan với closure

Thông thường, một hàm trong JavaScript sẽ lưu những thông tin của môi trường – nơi mà hàm được tạo ra, đó chính là Lexical Environment.

Xem Thêm  Chuyển đổi chuỗi JSON thành từ điển Python - json vào từ điển python

Nếu một hàm được định nghĩa thông qua cú pháp new Function thì lại khác. Hàm này không lưu thông tin của môi trường nơi hàm tạo ra mà lại lưu thông tin của môi trường global, ví dụ:

window

.

value

=

"test from window"

;

function

getFunc

(

)

{

let

value

=

"test from getFunc"

;

let

func

=

new

Hàm

(

" console.log (giá trị) "

)

;

trả về func

;

}

getFunc

(

)

(

)

;

Tôi đang ở trên tàu , giá trị func có thể được trả về giá trị getFunc khi giá trị value được thay đổi.

Không cần nữa, sau đó value thay vì console.log (value) xem một số khóa chung (sau đó thử mã này> window

So sánh với thông thường hàm định nghĩa:

  window 

.

value

=

"kiểm tra từ cửa sổ"

;

function

getFunc

(

)

{

let

value

=

"test from getFunc"

;

let

func

=

chức năng

(

)

{> console

.

log

(

value

)

;

}

;

trả về func

;

}

getFunc

(

)

(

)

;

thêm Hàm mới trong JavaScript sẽ được thực hiện, sao lưu ngay.

Việc chuyển đổi có thể được chia thành một chuỗi. Tôi không có biết trước nhỏ với nụ cười theo cách thường.

Giả sử dụng chức năng mới này kần tươn tác động trở lại với tôi, đó là giá cổ họng một tháng trở lại .

Nếu bạn quan tâm đến trình duyệt web này, bạn có thể tạo trang nén lại trên trang này

Nếu bạn đang tìm kiếm bộ nhớ cache , hãy cung cấp mã đó và sau đó bạn sẽ lấy lại được >. Ngoài ra đối với userName , bạn cần kiểm tra a .

Sau khi nhấp vào new Function , bạn có thể thêm một userName khác vào trang web của mình, cũng như userName .

Nếu bạn muốn truy cập trang new Function , bạn cũng có thể đi tới tham số thông tin tương tự.

Ngôn ngữ

Sau đây là Hàm mới trong JavaScript:

 

let

func

=

< p class = "token keyword"> new

Hàm

(

[

arg1

,

arg2

,

... < / p> argN

]

,

functionBody

)

;

Sự thật về các cách thức không chỉ là gì:

 

new

Hàm

(

" a "

,

" b "

,

"trả về a + b"

)

; >

mới

Function

(

"a,b"

,

"return a + b"

)

;

new

Function

(

"a , b"

,

"return a + b"

)

;

Hàm tạo bởi new Function không tham chiếu tới môi trường nơi hàm được tạo ra, mà tham chiếu đến đối tượng global.

Vì vậy, hàm này không thể đọc được giá trị của biến ngoài hàm. Điều này là tốt vì nó giúp tránh được nhiều lỗi.

Để đọc giá trị của biến trong hàm new Function, hãy truyền giá trị của biến vào hàm thông qua tham số.

Tham khảo: The "new Function" syntax


Xem thêm những thông tin liên quan đến chủ đề chức năng mới trong js

Full chức năng TO DO LIST với Javascript

  • Tác giả: SUNTECH VIỆT NAM
  • Ngày đăng: 2021-09-26
  • Đánh giá: 4 ⭐ ( 6430 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: THAM GIA NHÓM ĐỂ HỎI BÀI
    https://www.facebook.com/groups/384922779023099

    LIKE PAGE ỦNG HỘ
    https://www.facebook.com/suntech.edu.vn

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    suntechvietnam hoclaptrinhonline hoclaptrinhweb
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Mọi chi tiết xin liên hệ:
    Name: Phạm Kỳ Khôi
    Email: daotaolaptrinhsuntech@gmail.com
    Phone: 0942 668 586
    Zalo: 0942 668 586
    Website: https://suntech.edu.vn

Đối tượng window trong javascript

  • Tác giả: toidicode.com
  • Đánh giá: 5 ⭐ ( 9516 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Sau khi đã được tìm hiểu về DOM trong javascript rồi, thì bài này sẽ là bài mở đầu cho series BOM trong javascript.

Javascript Dùng Để Làm Gì ? Các Chức Năng Của Javascript Các Chức Năng Của Javascript

  • Tác giả: jdomain.vn
  • Đánh giá: 5 ⭐ ( 9323 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Khi một người học lập trình muốn trở thành một nhà phát triển web, bạn sẽ tự hỏi nên học ngôn ngữ lập trình nào, Không chỉ vậy, bạn sẽ muốn biết ngôn ngữ nào bạn nên tập trung vào đầu tiên

Javascript ES6 và những tính năng mới

  • Tác giả: viblo.asia
  • Đánh giá: 5 ⭐ ( 9160 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Bài viết này sẽ giới thiệu về một số tính năng mới của Javascript ES6. Dưới đây là những tính năng mĩnh sẽ giới thiệu hôm nay. 1. JavaScript let 2. JavaScript const 3. JavaScript Arrow Functions 4. Ja...

Lập trình chức năng bằng JavaScript

  • Tác giả: helpex.vn
  • Đánh giá: 3 ⭐ ( 4116 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Đây là blog đầu tiên của loạt bài về lập trình chức năng. Tôi sẽ nói ngắn gọn về các mô hình lập trình, sau đó chuyển sang mô tả các khái niệm lập trình chức năng sử dụng JavaScript, vì đây…

Tạo mới thêm xóa phần tử Dom - JavaScript

  • Tác giả: xuanthulab.net
  • Đánh giá: 5 ⭐ ( 9300 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Tạo ra một nút phần tử HTML trong DOM, chèn phần tử HTML, xóa phần tử và thay thế phần tử trong DOM HTML

JavaScript để làm gì? Các chức năng của JavaScript

  • Tác giả: sandev.vn
  • Đánh giá: 3 ⭐ ( 3601 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình