Thuật ngữ JavaScript cần biết

Bài đăng này bao gồm một số khái niệm cơ bản trong JavaScript. Mọi lập trình viên JavaScript đều phải biết và thành thạo những

1. Nguyên mẫu JavaScript

Hãy để tôi giải thích các cách tạo đối tượng khác nhau trong JavaScript. Một trong những cách tạo đối tượng trong JavaScript là hàm tạo. Hãy xem xét chức năng xây dựng dưới đây

function Bike[model,color]{
this.model = model,
this.color = color,
this.getDetails = function[]{
return this.model+' bike is '+this.color;
}
}
var bikeObj1 = new Bike['BMW','BLACK'];
var bikeObj2 = new Bike['BMW','WHITE'];
console.log[bikeObj1.getDetails[]]; //output: BMW bike is BLACK
console.log[bikeObj2.getDetails[]]; //output: BMW bike is WHITE
console.log[bikeObj1,bikeObj2] //attacheced below image as output

đầu ra của bảng điều khiển exp. log[bikeObj1,bikeObj2]

Trong ví dụ trên, chúng ta đang tạo hai đối tượng, bikeObj1, bikeObj2 bằng hàm tạo. Trong JavaScript, mọi đối tượng đều có phương thức và thuộc tính riêng. Trong ví dụ của chúng ta, hai đối tượng có hai thể hiện của hàm tạo

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
3. Thật vô nghĩa khi có một bản sao của
console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
4 làm điều tương tự

Thay vì sử dụng một bản sao của các phiên bản, chúng ta sẽ sử dụng thuộc tính nguyên mẫu của hàm tạo

Nguyên mẫu

Khi một đối tượng được tạo trong JavaScript, công cụ JavaScript sẽ thêm thuộc tính

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
5 vào đối tượng mới được tạo có tên là
console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
6.
console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
6 hoặc
console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
5 trỏ đến đối tượng nguyên mẫu của hàm tạo

function Bike[model,color]{
this.model = model,
this.color = color
}
Bike.prototype.getDetails = function[]{
return this.model+" bike is "+this.color;
}
var bikeObj1 = new Bike[‘BMW’,’Black’];
var bikeObj2 = new Bike[‘BMW’,’white’];
console.log[bikeObj1.getDetails[]]; //output: BMW bike is BLACK
console.log[bikeObj2.getDetails[]]; //output: BMW bike is WHITE
console.log[bikeObj1,bikeObj2] // attacheced below image as output

từ hình trên bên trong bikeObj1and bikeObj2 lớp không có thuộc tính getDetails[] nó chỉ được kế thừa từ Bike

Đối tượng

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
9, được tạo bằng hàm tạo Bike, có thuộc tính
console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
6 hoặc
console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
5 trỏ đến đối tượng nguyên mẫu của hàm tạo
console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
12

Trong đoạn mã dưới đây, cả thuộc tính

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
9it của
console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
6 hoặc
console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
5 và thuộc tính
console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
16 đều bằng nhau. Hãy kiểm tra xem chúng có trỏ đến cùng một vị trí hay không bằng cách sử dụng toán tử
console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
17

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true

TK [Không chắc tác giả định nói gì ở đây] Vì vậy, sử dụng thuộc tính nguyên mẫu, bao nhiêu đối tượng được tạo thì hàm chỉ được tải vào bộ nhớ một lần và chúng ta có thể ghi đè hàm nếu cần

2. Lớp JavaScript[ES6]

Các lớp JavaScript, được giới thiệu trong ES6, chủ yếu là đường cú pháp đối với kế thừa dựa trên nguyên mẫu hiện có của JavaScript. Cú pháp lớp không giới thiệu mô hình kế thừa hướng đối tượng mới cho JavaScript. Đầu ES5 sử dụng biểu thức hàm

kế thừa dựa trên nguyên mẫu hiện có

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
1

Định nghĩa các lớp

Các lớp trên thực tế là các “hàm đặc biệt”, và giống như bạn có thể định nghĩa các biểu thức hàm và khai báo hàm, cú pháp lớp có hai thành phần. biểu thức lớp và khai báo lớp

lớp ES6

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
9

Lợi ích của việc sử dụng lớp học

  • Cú pháp thuận tiện, khép kín
  • Một cách duy nhất, hợp quy để mô phỏng các lớp trong JavaScript. Trước ES6, đã có một số triển khai cạnh tranh trong các thư viện phổ biến
  • Quen thuộc hơn với những người có nền tảng ngôn ngữ dựa trên lớp học
3. IIFE

IIFE trong JavaScript là gì?

IIFE [Biểu thức hàm được gọi ngay lập tức] là một hàm JavaScript chạy ngay khi được xác định

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
0

Lần gặp đầu tiên của bạn có vẻ khá khó hiểu nhưng thực ra, mô hình rất đơn giản. Mẫu được gọi ngay lập tức biểu thức hàm

Hàm JavaScript có thể được tạo thông qua khai báo hàm hoặc biểu thức hàm. Khai báo hàm là cách “thông thường” để tạo một hàm được đặt tên

Một hàm được tạo trong ngữ cảnh của một biểu thức cũng là một biểu thức hàm. Điều quan trọng về các biểu thức JavaScript là chúng trả về các giá trị

Trong cả hai trường hợp trên, giá trị trả về của biểu thức là hàm.
Điều đó có nghĩa là nếu chúng ta muốn gọi biểu thức hàm ngay lập tức, chúng ta chỉ cần xử lý một vài dấu ngoặc đơn ở cuối. Điều này đưa chúng ta trở lại đoạn mã đầu tiên mà chúng ta đã xem xét.

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
1

Lý do chính để sử dụng IIFE là để có được quyền riêng tư dữ liệu. Bởi vì phạm vi biến var của JavaScript đối với hàm chứa của chúng, bất kỳ biến nào được khai báo trong IIFE đều không thể được truy cập bởi thế giới bên ngoài

4. hiểu biết Phạm vi

Một định nghĩa đơn giản cho một phạm vi trong JavaScript

Phạm vi là khả năng truy cập của các biến, hàm và đối tượng trong một số phần cụ thể của mã của bạn trong thời gian chạy. Nói cách khác, phạm vi xác định mức độ hiển thị của các biến và các tài nguyên khác trong các vùng mã của bạn

Theo định nghĩa ở trên về Phạm vi, Vì vậy, điểm hạn chế khả năng hiển thị của các biến và không có sẵn mọi thứ ở mọi nơi trong mã của bạn

phạm vi được xác định theo hai cách chính,

  • Phạm vi toàn cầu
  • Phạm vi địa phương
console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
2

xem xét biến lời chào mã ở trên phải là phạm vi toàn cầu, nó có thể truy cập bên trong hàm,

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
3

Trong đoạn mã trên cho phạm vi cục bộ,

Ở các biến mức phạm vi trong JavaScript ES6 đã cập nhật biến cẩu thả let, var, const gõ kiểm tra với điều đó, Để tìm hiểu phạm vi, bạn cũng cần hiểu về cẩu

để biết thêm tham khảo trang web này https. //rượu Scotch. io/hướng dẫn/hiểu-phạm vi-in-javascript

5. Đóng JavaScript

Đóng cửa là gì?

Bao đóng là sự kết hợp của một hàm và môi trường từ vựng trong đó hàm đó được khai báo

Bao đóng là một hàm bên trong có quyền truy cập vào các biến của hàm bên ngoài [kèm theo] — chuỗi phạm vi. Việc đóng cửa có ba chuỗi phạm vi. nó có quyền truy cập vào phạm vi của chính nó [các biến được xác định giữa các dấu ngoặc nhọn của nó], nó có quyền truy cập vào các biến của hàm bên ngoài và nó có quyền truy cập vào các biến toàn cục

Hãy xem một ví dụ đóng cửa dưới đây

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
4

Trong mã này, Chúng tôi có một hàm bên ngoài

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
18 trả về một hàm bên trong là
console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
19,

Hàm bên trong sẽ có quyền truy cập vào các biến trong phạm vi hàm bên ngoài, ngay cả sau khi hàm bên ngoài đã trả về

6. Mô hình mô-đun

Trong JavaScript, một mô-đun là một đơn vị nhỏ mã độc lập, có thể tái sử dụng. Các mô-đun là nền tảng của nhiều mẫu thiết kế JavaScript và cực kỳ cần thiết khi xây dựng bất kỳ ứng dụng dựa trên JavaScript không tầm thường nào

Xuất mô-đun JavaScript dưới dạng giá trị thay vì xác định loại, vì mô-đun JavaScript JavaScript có thể xuất một đối tượng, Các mô-đun xuất chuỗi chứa mẫu HTML hoặc biểu định kiểu CSS cũng phổ biến

JavaScript không có từ khóa riêng tư nhưng chúng ta có thể đạt được các phương thức và thuộc tính riêng tư bằng cách sử dụng các bao đóng

function Bike[model,color]{
this.model = model,
this.color = color
}
Bike.prototype.getDetails = function[]{
return this.model+" bike is "+this.color;
}
var bikeObj1 = new Bike[‘BMW’,’Black’];
var bikeObj2 = new Bike[‘BMW’,’white’];
console.log[bikeObj1.getDetails[]]; //output: BMW bike is BLACK
console.log[bikeObj2.getDetails[]]; //output: BMW bike is WHITE
console.log[bikeObj1,bikeObj2] // attacheced below image as output
0

các mô-đun này có thể đã xuất sang các tệp JS khác bằng cách sử dụng từ khóa xuất,

function Bike[model,color]{
this.model = model,
this.color = color
}
Bike.prototype.getDetails = function[]{
return this.model+" bike is "+this.color;
}
var bikeObj1 = new Bike[‘BMW’,’Black’];
var bikeObj2 = new Bike[‘BMW’,’white’];
console.log[bikeObj1.getDetails[]]; //output: BMW bike is BLACK
console.log[bikeObj2.getDetails[]]; //output: BMW bike is WHITE
console.log[bikeObj1,bikeObj2] // attacheced below image as output
1

các mô-đun có thể nhập vào một tệp JS khác

function Bike[model,color]{
this.model = model,
this.color = color
}
Bike.prototype.getDetails = function[]{
return this.model+" bike is "+this.color;
}
var bikeObj1 = new Bike[‘BMW’,’Black’];
var bikeObj2 = new Bike[‘BMW’,’white’];
console.log[bikeObj1.getDetails[]]; //output: BMW bike is BLACK
console.log[bikeObj2.getDetails[]]; //output: BMW bike is WHITE
console.log[bikeObj1,bikeObj2] // attacheced below image as output
2

Tại sao chúng ta cần sử dụng Module?

Có rất nhiều lợi ích khi sử dụng các mô-đun có lợi cho việc mở rộng,

một số thì,

  1. khả năng bảo trì
  2. khả năng sử dụng lại
  3. không gian tên
7. cẩu

Trong JavaScript, nghĩa là cẩu của nó,

Hoisting là một cơ chế JavaScript trong đó các khai báo biến và hàm được di chuyển lên đầu phạm vi của chúng trước khi thực thi mã

Nó thực sự là một định nghĩa cho cẩu,

Trong lời giải thích đơn giản cho Hoisting với mã,

function Bike[model,color]{
this.model = model,
this.color = color
}
Bike.prototype.getDetails = function[]{
return this.model+" bike is "+this.color;
}
var bikeObj1 = new Bike[‘BMW’,’Black’];
var bikeObj2 = new Bike[‘BMW’,’white’];
console.log[bikeObj1.getDetails[]]; //output: BMW bike is BLACK
console.log[bikeObj2.getDetails[]]; //output: BMW bike is WHITE
console.log[bikeObj1,bikeObj2] // attacheced below image as output
3

thực ra, JavaScript đã cẩu khai báo biến. Đây là giao diện của đoạn mã trên đối với trình thông dịch

function Bike[model,color]{
this.model = model,
this.color = color
}
Bike.prototype.getDetails = function[]{
return this.model+" bike is "+this.color;
}
var bikeObj1 = new Bike[‘BMW’,’Black’];
var bikeObj2 = new Bike[‘BMW’,’white’];
console.log[bikeObj1.getDetails[]]; //output: BMW bike is BLACK
console.log[bikeObj2.getDetails[]]; //output: BMW bike is WHITE
console.log[bikeObj1,bikeObj2] // attacheced below image as output
4

JavaScript chỉ nâng khai báo, không khởi tạo

Chắc chắn, điều này có nghĩa là bất kể hàm và biến được khai báo ở đâu, chúng sẽ được chuyển lên đầu phạm vi của chúng bất kể phạm vi của chúng là toàn cục hay cục bộ

vì vậy điều này cũng phù hợp với một biến của phạm vi cấp chức năng cũng được nâng lên

Điều tiếp theo bạn cần biết về Palăng,

  1. từ khóa let, var, const trong JavaScript [ES6]
  2. chức năng cẩu
  3. lớp cẩu

Để biết thêm tham khảo trang web này Understateing-Hoisting-in-JavaScript

8. cà ri

Giải thích về Curry với các ví dụ trong JavaScript

Currying là một kỹ thuật đánh giá hàm với nhiều đối số, thành một chuỗi hàm với một đối số duy nhất

Nói cách khác, khi một hàm, thay vì lấy tất cả các đối số cùng một lúc, lại lấy đối số đầu tiên và trả về một hàm mới nhận đối số thứ hai và trả về một hàm mới nhận đối số thứ ba, v.v.

xem xét mã ví dụ dưới đây

function Bike[model,color]{
this.model = model,
this.color = color
}
Bike.prototype.getDetails = function[]{
return this.model+" bike is "+this.color;
}
var bikeObj1 = new Bike[‘BMW’,’Black’];
var bikeObj2 = new Bike[‘BMW’,’white’];
console.log[bikeObj1.getDetails[]]; //output: BMW bike is BLACK
console.log[bikeObj2.getDetails[]]; //output: BMW bike is WHITE
console.log[bikeObj1,bikeObj2] // attacheced below image as output
5

cà ri này đạt được thông qua các lần đóng, vì vậy các biến chương trình ở trên a, b thuộc tính riêng của hàm cha

Tại sao cà ri hữu ích?

Chủ yếu Nó giúp tạo ra một chức năng bậc cao hơn. Nó cực kỳ hữu ích trong việc xử lý sự kiện

Làm cách nào để chuyển đổi một chức năng hiện có thành phiên bản đã được chỉnh sửa?

Chức năng cà ri không tồn tại trong JavaScript gốc. Nhưng một thư viện như lodash giúp chuyển đổi một chức năng thành một chức năng dễ dàng hơn

9. ghi nhớ

Ghi nhớ là một kỹ thuật lập trình cố gắng tăng hiệu suất của hàm bằng cách lưu vào bộ đệm các kết quả được tính toán trước đó của nó. Bởi vì các đối tượng JavaScript hoạt động giống như các mảng kết hợp, nên chúng là những ứng cử viên lý tưởng để hoạt động như các bộ đệm. Mỗi khi một chức năng ghi nhớ được gọi, các tham số của nó được sử dụng để lập chỉ mục bộ đệm. Nếu có dữ liệu thì có thể trả về mà không cần thực hiện toàn bộ chức năng. Tuy nhiên, nếu dữ liệu không được lưu vào bộ đệm thì hàm sẽ được thực thi và kết quả được thêm vào bộ đệm

Chức năng là một phần không thể thiếu của lập trình, chúng giúp mô đun hóa và tái sử dụng mã của chúng tôi, theo định nghĩa ở trên, ghi nhớ là một cách tối ưu hóa mã của chúng tôi

function Bike[model,color]{
this.model = model,
this.color = color
}
Bike.prototype.getDetails = function[]{
return this.model+" bike is "+this.color;
}
var bikeObj1 = new Bike[‘BMW’,’Black’];
var bikeObj2 = new Bike[‘BMW’,’white’];
console.log[bikeObj1.getDetails[]]; //output: BMW bike is BLACK
console.log[bikeObj2.getDetails[]]; //output: BMW bike is WHITE
console.log[bikeObj1,bikeObj2] // attacheced below image as output
6

từ đoạn mã trên, bạn có thể hiểu ghi nhớ

11. Các phương thức apply, call và bind

Theo truyền thống, JS có đối tượng, Thuộc tính và phương thức, vì vậy mỗi đối tượng đều có thuộc tính và phương thức

Trong JavaScript, chúng ta có thể thực hiện một số phép thuật bằng cách sử dụng các phương thức gọi, áp dụng, liên kết,

Phương thức gọi/Áp dụng/Liên kết JavaScript

Xem xét hình trên Object1 có thể có Thuộc tính riêng và Object2 có thể có thuộc tính riêng, vì vậy chúng ta có thể viết một phương thức chung cho các đối tượng này và sử dụng bên trong đó bằng phương thức gọi/áp dụng/liên kết. Tôi hy vọng bây giờ bạn có thể hiểu tại sao gọi/áp dụng/liên kết phương thức bằng cách sử dụng

hãy xem sự khác biệt và mã cho phương thức Gọi/Áp dụng/Liên kết

1. Phương thức gọi

xem xét mã bên dưới, obj có thuộc tính num, sử dụng phương thức gọi, chúng ta có thể ràng buộc obj để thêm chức năng,

function Bike[model,color]{
this.model = model,
this.color = color
}
Bike.prototype.getDetails = function[]{
return this.model+" bike is "+this.color;
}
var bikeObj1 = new Bike[‘BMW’,’Black’];
var bikeObj2 = new Bike[‘BMW’,’white’];
console.log[bikeObj1.getDetails[]]; //output: BMW bike is BLACK
console.log[bikeObj2.getDetails[]]; //output: BMW bike is WHITE
console.log[bikeObj1,bikeObj2] // attacheced below image as output
7

2. áp dụng phương pháp

Tương tự, phương thức Áp dụng cũng hoạt động nhưng sự khác biệt duy nhất là sử dụng phương thức áp dụng, các đối số truyền vào có thể là một mảng, hãy tham khảo mã bên dưới

3. Phương pháp ràng buộc

phương thức liên kết trả về một thể hiện phương thức thay vì giá trị kết quả, sau đó cần thực thi một phương thức liên kết với các đối số

Trong Đoạn mã trên, giải thích đơn giản cách sử dụng phương thức gọi/Áp dụng/Ràng buộc với một đối số

11. Đa hình trong JavaScript

Đa hình là một trong những nguyên lý của Lập trình hướng đối tượng [OOP]. Đó là cách thiết kế các đối tượng để chia sẻ các hành vi và có thể ghi đè các hành vi được chia sẻ bằng các hành vi cụ thể. Tính đa hình tận dụng tính kế thừa để thực hiện điều này

hãy xem mã mẫu để ghi đè một hàm trong JavaScript

function Bike[model,color]{
this.model = model,
this.color = color
}
Bike.prototype.getDetails = function[]{
return this.model+" bike is "+this.color;
}
var bikeObj1 = new Bike[‘BMW’,’Black’];
var bikeObj2 = new Bike[‘BMW’,’white’];
console.log[bikeObj1.getDetails[]]; //output: BMW bike is BLACK
console.log[bikeObj2.getDetails[]]; //output: BMW bike is WHITE
console.log[bikeObj1,bikeObj2] // attacheced below image as output
8

Trong phương thức dựa trên nguyên mẫu chương trình đơn giản ở trên cho hàm tạo của Nhân viên phải ghi đè bởi một hàm nguyên mẫu khác khi trả về Tên dưới dạng chữ hoa

Vì vậy, chúng ta có thể ghi đè một hàm trong các Phạm vi khác nhau và cũng có thể nạp chồng phương thức, JS không có nạp chồng phương thức gốc nhưng chúng ta vẫn có thể đạt được

Vẫn còn một số khái niệm còn tồn tại, tất cả đều là Nạp chồng phương thức, Trừu tượng hóa, Kế thừa trong JavaScript

12. J không đồng bộ

Trong JavaScript Đồng bộ và không đồng bộ là Mẫu thực thi mã,

Trong JavaScript Mã thực thi được thực hiện bằng hai cách riêng biệt

  1. Công cụ JS trình duyệt [Công cụ JS V8 phổ biến]
  2. Công cụ NodeJs V8

Trình duyệt JS Engine phân tích tệp Html và thực thi JavaScript theo ba mẫu,

  1. đồng bộ
  2. không đồng bộ
  3. hoãn lại
function Bike[model,color]{
this.model = model,
this.color = color
}
Bike.prototype.getDetails = function[]{
return this.model+" bike is "+this.color;
}
var bikeObj1 = new Bike[‘BMW’,’Black’];
var bikeObj2 = new Bike[‘BMW’,’white’];
console.log[bikeObj1.getDetails[]]; //output: BMW bike is BLACK
console.log[bikeObj2.getDetails[]]; //output: BMW bike is WHITE
console.log[bikeObj1,bikeObj2] // attacheced below image as output
9

while browser JS Engine parsing HTML file if tag occurs means there will be blocking, so how it gets execute JavaScript Code for that above three patterns.

  1. If synchronous tag occurs, JS engine will download the code and execute that code and after that only parsing the below HTML code, generally Synchronous is a blocking script execution.
  2. If Asynchronous tag occurs, while downloading the code JS engine will parse the HTML and once If JS code gets downloaded pause the parsing and back into the JS Code Execution, generally Asynchronous is a Non-blocking script execution.
  3. If Asynchronous tag occurs, JS Engine will parse the all HTML code and after that only executes the JS Code,

Công cụ NodeJS V8

Công cụ NodeJS V8 thực thi Mã JavaScript của nó dưới dạng một luồng dựa trên vòng lặp Sự kiện. …. biết thêm về thực thi NodeJS từ các liên kết bên dưới

Vòng lặp sự kiện và NodeJS

Mô hình đồng bộ và không đồng bộ

13. Chức năng gọi lại

Định nghĩa chức năng gọi lại

Tham chiếu đến mã thực thi hoặc một đoạn mã thực thi được chuyển dưới dạng đối số cho mã khác

Từ định nghĩa trên, hàm gọi lại là một hàm được truyền vào một hàm khác dưới dạng đối số, sau đó được gọi bên trong hàm bên ngoài để hoàn thành một số loại quy trình hoặc hành động

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
0

Trong chương trình ab ở trên này, lời chào của hàm được truyền dưới dạng đối số cho hàm processUserInput, vì vậy tôi hy vọng bây giờ bạn đã hiểu hàm gọi lại trong JavaScript

14. Hiểu lời hứa

Định nghĩa lời hứa

Đối tượng

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
90 đại diện cho việc hoàn thành [hoặc lỗi] cuối cùng của một hoạt động không đồng bộ và giá trị kết quả của nó

Một lời hứa đại diện cho kết quả của chức năng không đồng bộ. Lời hứa có thể được sử dụng để tránh gọi lại chuỗi. Trong JavaScript,

vì vậy, bất cứ khi nào mã JavaScript thực thi không đồng bộ, cần xử lý một thao tác như một trong những cách sẽ sử dụng lời hứa

Lời hứa, đã xuất hiện khá lâu và được xác định bởi một thông số kỹ thuật có tên là Promise/A+. ES6 đã áp dụng thông số kỹ thuật này để triển khai Promise;

Một

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
91 đang ở một trong những tiểu bang này

  • chưa giải quyết. trạng thái ban đầu, không hoàn thành cũng không bị từ chối
  • hoàn thành. có nghĩa là hoạt động hoàn thành thành công
  • vật bị loại bỏ. có nghĩa là hoạt động thất bại
console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
1

xem xét đoạn mã trên cho một lời hứa mẫu giả định giống như thực hiện Thao tác DB một cách không đồng bộ, Trong lời hứa đó, các đối số Đối tượng là hai chức năng giải quyết và từ chối,

bất cứ khi nào chúng tôi thực hiện lời hứa đó bằng cách sử dụng. thì[] và. catch[] làm chức năng gọi lại Để nhận các giá trị giải quyết hoặc từ chối

Để tìm hiểu thêm về Promise

15. Không đồng bộ & Đang chờ

Babel hiện hỗ trợ async/await ngay lập tức và ES2016 [hoặc ES7] sắp ra mắt, async & await về cơ bản chỉ là đường cú pháp trên Promise, chỉ riêng hai từ khóa này sẽ khiến việc viết mã không đồng bộ trong Node trở nên dễ chịu hơn nhiều

Trong JavaScript Mẫu không đồng bộ được xử lý trong các phiên bản khác nhau,

ES5 -> Gọi lại

ES6 -> Lời hứa

ES7 -> không đồng bộ & đang chờ

Tuy nhiên, điều mà nhiều người có thể đã bỏ qua là toàn bộ nền tảng của async/await là những lời hứa. Trên thực tế, mọi hàm async bạn viết sẽ trả về một lời hứa và mọi thứ bạn chờ đợi thường sẽ là một lời hứa

console.log[bikeObj1.__proto__ === Bike.prototype ];//output : true
2

Mã trên cho một async và chờ đợi đơn giản,

Tốt, async/await là một cải tiến cú pháp tuyệt vời cho cả lập trình viên nodejs và trình duyệt. So với Promises, đó là một con đường tắt để đến cùng một đích. Nó giúp nhà phát triển triển khai lập trình chức năng trong JavaScript và tăng khả năng đọc mã, làm cho JavaScript trở nên thú vị hơn

Để hiểu về Async Await, bạn chỉ cần hiểu về promise

Trong Async & Await nhiều thứ khác ở đó, Chỉ cần chơi xung quanh nó

phần kết luận

Cho đến nay, trong bài đăng này, chúng tôi đã đề cập đến nhiều khái niệm quan trọng trong JavaScript và có phần Giới thiệu về nó. Nói chung, đối với mỗi khái niệm, chỉ cần cung cấp một mã mẫu để hiểu các khái niệm

Đây là bảng mã API JavaScript dành cho nhà phát triển giao diện người dùng http. //overapi. com/javascript,

Nguồn hình ảnh từ http. //overapi. com/javascript

Vì vậy, bạn có thể nhận được nhiều nội dung hơn và chơi xung quanh từng khái niệm

Tôi vừa xem qua phần Giới thiệu về tất cả các khái niệm, vì vậy nếu bạn có bất kỳ câu hỏi nào, Chỉ cần hỏi trong phần phản hồi

Những thuật ngữ nào được sử dụng trong JavaScript?

Dưới đây là năm thuật ngữ quan trọng nhất mà người mới bắt đầu cần biết và một số ví dụ về cách bạn sẽ sử dụng các thuật ngữ này trong thực tế. .
var. Sự định nghĩa. Đây là cách phổ biến nhất để tạo một biến trong JavaScript. .
chức năng. Sự định nghĩa. Từ khóa này cho phép chúng tôi xác định các chức năng của riêng mình trong JavaScript. .
có điều kiện. .
Vòng. .
Vật

Mọi nhà phát triển JavaScript nên biết điều gì?

15 khái niệm JavaScript mà mọi Lập trình viên JavaScript phải biết. Nguồn ảnh từ codeburst. io. .
Nguyên mẫu JavaScript. Hãy để tôi giải thích các cách tạo đối tượng khác nhau trong JavaScript. .
Lớp JavaScript[ES6]. .
IIFE. .
Đóng JavaScript. .
Mô hình mô-đun. .
cẩu. .
cà ri

Tôi nên biết gì về JavaScript?

Dưới đây là một số điều mà mọi nhà phát triển JavaScript mới bắt đầu nên biết. .
Bạn có thể thêm thuộc tính vào hầu hết mọi thứ. .
Chức năng là đối tượng. .
vì. trong các vòng lặp lặp lại tên thuộc tính, không phải giá trị. .
phạm vi biến. .
Các biến không được khai báo rõ ràng có thể là toàn cầu. .
Hiểu như thế nào. nguyên mẫu hoạt động

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

Có 3 cách viết hàm trong JavaScript. .
Khai báo hàm
Biểu thức hàm
Chức năng mũi tên

Chủ Đề