Gần như mọi thứ trong JavaScript là một đối tượng trừ sáu thứ không phải là đối tượng —
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
6,// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
7, chuỗi, số, boolean và ký hiệu. Chúng được gọi là giá trị nguyên thủy hoặc kiểu nguyên thủyBất cứ thứ gì không phải là giá trị nguyên thủy đều là Đối tượng. Điều đó bao gồm các mảng, hàm, hàm tạo và chính các đối tượng
Đúng. Hàm và mảng cũng là đối tượng như chúng ta sẽ thấy ở phần sau của bài viết
Các đối tượng
Về mặt khái niệm, các Đối tượng giống nhau trong tất cả các ngôn ngữ lập trình tôi. e chúng đại diện cho những thứ trong thế giới thực mà chúng ta muốn đại diện bên trong chương trình của mình bằng các đặc điểm/thuộc tính và phương thức
Ví dụ: nếu đối tượng của bạn là sinh viên, nó sẽ có các thuộc tính như tên, tuổi, địa chỉ, id, v.v. và các phương thức như
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
8, // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
9 v.v.Trong JavaScript, hãy nghĩ về một đối tượng dưới dạng một danh sách chứa các mục và mỗi mục [một thuộc tính hoặc một phương thức] trong danh sách được lưu trữ bởi một cặp khóa-giá trị trong bộ nhớ dưới dạng tham chiếu
Hãy xem một ví dụ đối tượng
const firstObj = {
1: "deepak",
"age": 28
}
const newObj = new Object[];
newObj.name = ‘Deepak’;
newObj.location = ‘Delhi, India’;
0 là một đối tượng có 2 thuộc tính 1 và tuổi và giá trị là const newObj = new Object[];
newObj.name = ‘Deepak’;
newObj.location = ‘Delhi, India’;
1 và const newObj = new Object[];
newObj.name = ‘Deepak’;
newObj.location = ‘Delhi, India’;
2Các đối tượng JavaScript hơi khác nhau theo cách chúng được tạo. Không có yêu cầu đối với một
const newObj = new Object[];
newObj.name = ‘Deepak’;
newObj.location = ‘Delhi, India’;
3 như vậy và có thể được khai báo bằng cách sử dụng ký hiệu chữTạo đối tượng
Chúng ta có thể tạo các đối tượng theo nhiều cách trong javascript, hãy xem xét từng cách trong số chúng
const newObj = new Object[];
4 [D\cách trực tiếp]. Đối tượng chữ là một danh sách các cặp khóa-giá trị được phân tách bằng dấu phẩy được đặt trong dấu ngoặc nhọn. Các giá trị thuộc tính ký tự đối tượng có thể thuộc bất kỳ loại dữ liệu nào, bao gồm ký tự mảng, hàm, ký tự đối tượng lồng nhau hoặc kiểu dữ liệu nguyên thủy
newObj.name = ‘Deepak’;
newObj.location = ‘Delhi, India’;
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
0Ghi chú. Các khóa đối tượng sinh viên ở trên có thể được truy cập thông qua ký hiệu Dấu chấm i. e
const newObj = new Object[];
5,
newObj.name = ‘Deepak’;
newObj.location = ‘Delhi, India’;const newObj = new Object[];
6 hoặc thông qua ký hiệu ngoặc vuông i. e
newObj.name = ‘Deepak’;
newObj.location = ‘Delhi, India’;const newObj = new Object[];
7,
newObj.name = ‘Deepak’;
newObj.location = ‘Delhi, India’;const newObj = new Object[];
8, v.v.
newObj.name = ‘Deepak’;
newObj.location = ‘Delhi, India’;
2.
const newObj = new Object[];
newObj.name = ‘Deepak’;
newObj.location = ‘Delhi, India’;
9. phương thức tạo một đối tượng mới với nguyên mẫu và thuộc tính được chỉ định của đối tượng cũGhi chú. Theo mặc định, mọi hàm JavaScript đều có thuộc tính đối tượng
// syntax - Object.create[prototype[, propertiesObject]]
60 [theo mặc định, thuộc tính này trống]. Các phương thức hoặc thuộc tính có thể được gắn vào thuộc tính này
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
Dưới đây là đầu ra của đối tượng
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
61Đối tượng trong Javascript
Bây giờ chúng ta có thể thêm các thuộc tính và dữ liệu mới vào đối tượng
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
62 bằng phương pháp chúng ta đang học ở đâyGhi chú.
// syntax - Object.create[prototype[, propertiesObject]]
62sẽ có quyền truy cập vào các khóa và giá trị của đối tượng
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain// syntax - Object.create[prototype[, propertiesObject]]
64 gốc vì nó được thêm vào chuỗi nguyên mẫu
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain// syntax - Object.create[prototype[, propertiesObject]]
62 và đây là một cách chúng tôi thực hiện kế thừa trong javascript. Nghĩa là,
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain// syntax - Object.create[prototype[, propertiesObject]]
66 sẽ lưu trữ một liên kết đến đối tượng
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain// syntax - Object.create[prototype[, propertiesObject]]
67. Đối tượng cha này cũng được tham khảo khi một thuộc tính được đọc
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chainCha mẹ có thể có cha mẹ, v.v. Điều này được lặp lại cho đến khi chúng ta đạt được một đối tượng không có cha mẹ nào. cha mẹ là
// syntax - Object.create[prototype[, propertiesObject]]
68
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
3.
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
69. Việc sử dụng // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
70constructor kết hợp với từ khóa “// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
71” cho phép chúng ta khởi tạo các đối tượng mớiHãy xem qua một ví dụ
const newObj = new Object[];
newObj.name = ‘Deepak’;
newObj.location = ‘Delhi, India’;
Tuy nhiên, phương pháp sử dụng
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
72 ở trên không phù hợp lắm với các chương trình yêu cầu tạo nhiều đối tượng cùng loại, vì nó sẽ liên quan đến việc viết lặp đi lặp lại các dòng mã trên cho từng đối tượng đóĐể đối phó với vấn đề này, chúng ta có thể sử dụng phương pháp tiếp theo
4.
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
73. Trình xây dựng có thể hữu ích khi chúng ta cần một cách để tạo một “loại” đối tượng có thể được sử dụng nhiều lần mà không cần phải xác định lại đối tượng mỗi lần và điều này có thể đạt được bằng cách sử dụng hàm Trình xây dựng đối tượngHãy xem qua một ví dụ
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
6Chúng tôi đã tạo hai đối tượng có cùng thuộc tính nhưng có giá trị khác nhau
5.
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
74. đây là một phương pháp khác để tạo một đối tượng mới từ các đối tượng khácGhi chú. Chúng tôi sẽ đề cập đến quyền sở hữu / quyền sở hữu trong phần tiếp theo, vì vậy hãy chịu đựng điều này với tôi
Nó sao chép các giá trị của tất cả các thuộc tính riêng có thể đếm được từ một hoặc nhiều đối tượng nguồn sang đối tượng đích. Nó sẽ trả về đối tượng mục tiêu. Hãy hiểu bằng một ví dụ
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
7Có rất nhiều trường hợp sử dụng cho
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
74 như Nhân bản đối tượng, Hợp nhất các đối tượng, v.v.6.
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
76. Phương thức chuyển đổi danh sách các cặp khóa-giá trị thành một đối tượng. Hãy xem qua một ví dụ// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
7Ghi chú. Cách tốt nhất để tạo các đối tượng là thông qua ký hiệu Nghĩa đen vì nó chiếm ít không gian hơn trong mã nguồn. Có thể nhận biết rõ ràng điều gì đang xảy ra, vì vậy khi sử dụng
// syntax - Object.create[prototype[, propertiesObject]]
72, bạn thực sự chỉ cần gõ nhiều hơn và [về lý thuyết, nếu không được tối ưu hóa bởi công cụ JavaScript] thực hiện một lệnh gọi hàm không cần thiết. Ngoài ra, ký hiệu chữ tạo đối tượng và gán thuộc tính trong cùng một dòng mã, điều này không xảy ra với những người khác
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
Cách thêm/cập nhật và xóa thuộc tính của một đối tượng
Các thuộc tính cho một đối tượng có thể được thêm thông qua ký hiệu dấu chấm hoặc dấu ngoặc như đã thảo luận trước đó. Hãy xem xét một ví dụ
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
9Ở đây,
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
78 và // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
79 là các thuộc tính của đối tượngMột đối tượng chỉ có thể chứa một khóa duy nhất với một giá trị. Chúng tôi không thể có một khóa duy nhất có hai giá trị khác nhau
Tên thuộc tính có thể là một chuỗi hoặc một số hoặc ký tự đặc biệt hoặc thuộc tính động, nhưng nếu tên thuộc tính không phải là một chuỗi thì nó phải được truy cập bằng ký hiệu ngoặc. Vì vậy, nếu chúng ta cần truy cập thuộc tính
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
70 trong ví dụ trên, chúng ta có thể thực hiện // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
71 nhưng // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
72 sẽ trả về lỗi cú pháp. Tuy nhiên, trường hợp tài sản tôi. e // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
73 hoặc // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
74 sẽ hoạt độngconst firstObj = {
1: "deepak",
"age": 28
}
7Để cập nhật một thuộc tính, chúng ta có thể sử dụng lại cả hai loại ký hiệu trên. Nếu chúng tôi thêm giá trị vào các thuộc tính đã được tạo thì giá trị được cập nhật khác được tạo
const firstObj = {
1: "deepak",
"age": 28
}
8Ở trên sẽ cập nhật giá trị thành phố từ
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
75 đến // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
76Chúng ta cũng có thể tạo và cập nhật các thuộc tính cho một đối tượng thông qua các phương thức hàm
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
70 như // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
78 hoặc // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
79// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
00Để xóa một thuộc tính của một đối tượng, chúng ta có thể sử dụng từ khóa
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
90 và chúng ta có thể sử dụng cả hai ký hiệu để làm như vậy// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
01Giá trị trả về
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
90 là // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
92 nếu thuộc tính đã được xóa thành công. Nếu không, nó sẽ là // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
93Bạn có biết cách không cho phép cập nhật hoặc xóa thuộc tính không?
Làm cách nào để lặp lại các thuộc tính đối tượng?
Sẽ có một tình huống trong khi mã hóa thực tế mà chúng tôi muốn truy cập tất cả các cặp khóa-giá trị đối tượng
Sử dụng Vòng lặp — vòng lặp for in và for of
Trong trường hợp for in, nó lặp lại một đối tượng và trả về từng thuộc tính một
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
02Khóa sẽ có tất cả các thuộc tính từng cái một và
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
94 sẽ trả về giá trị. Vòng lặp for cũng lặp qua chuỗi nguyên mẫu và cũng sẽ trả về các khóa chính, vì vậy đừng ngạc nhiên nếu bạn thấy nhiều khóa hơn. Để tránh nhìn thấy nhiều khóa hơn, chúng tôi có thể thực hiện kiểm tra ____395 để chỉ nhận các khóa đối tượng hiện tạiTrong trường hợp for of, nó lặp đi lặp lại lặp đi lặp lại trên các đối tượng có thể lặp lại. Để đọc thêm tại đây
Có nhiều phương thức khác nhau trong hàm Đối tượng giúp truy cập các thuộc tính và giá trị của đối tượng, không phải chuỗi nguyên mẫu
// syntax - Object.create[prototype[, propertiesObject]]
96 hoặc
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain// syntax - Object.create[prototype[, propertiesObject]]
97. Trả về một mảng các khóa chuỗi
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
032.
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
98. Trả về một mảng các giá trị// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
043.
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
99. Trả về một mảng gồm const firstObj = {
1: "deepak",
"age": 28
}
70 cặp// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
05Từ những gì chúng ta thấy ở trên, thứ tự xuất hiện của các thuộc tính không cố định trong một đối tượng
Cách kiểm tra sự tồn tại của các thuộc tính trong một đối tượng
Có ba cách để kiểm tra thuộc tính có tồn tại trong một đối tượng hay không
- Sử dụng
const firstObj = {
71. Phương thức này trả về một giá trị boolean cho biết liệu đối tượng có thuộc tính được chỉ định làm thuộc tính riêng của nó hay không, không phải thuộc tính gốc/kế thừa
1: "deepak",
"age": 28
}
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
06Ghi chú.
const firstObj = {
72 trả về true ngay cả khi giá trị của thuộc tính là
1: "deepak",
"age": 28
}const firstObj = {
73 hoặc
1: "deepak",
"age": 28
}const firstObj = {
74
1: "deepak",
"age": 28
}
Nếu chúng ta có
// syntax - Object.create[prototype[, propertiesObject]]
95 làm tên thuộc tính trong một đối tượng thì sao?
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
2. Sử dụng toán tử in — Toán tử
const firstObj = {
1: "deepak",
"age": 28
}
76 trả về // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
92 nếu thuộc tính đã chỉ định nằm trong đối tượng đã chỉ định hoặc chuỗi nguyên mẫu của nó i. e bên trong cha mẹ của nó// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
07Ghi chú.
const firstObj = {
72 chỉ kiểm tra thuộc tính đối tượng hiện tại trong khi toán tử
1: "deepak",
"age": 28
}const firstObj = {
79 kiểm tra thuộc tính hiện tại + cha mẹ
1: "deepak",
"age": 28
}
3. Sử dụng chức năng tùy chỉnh
Có nhiều cách khác nhau để kiểm tra xem một thuộc tính có tồn tại hay không thông qua một phương thức tùy chỉnh. Một trong số đó là thông qua
const firstObj = {
1: "deepak",
"age": 28
}
80Ví dụ// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
08Bình luận xuống bên dưới phương pháp tùy chỉnh của bạn để làm điều tương tự 😃
Sao chép theo tham chiếu/chia sẻ và sao chép theo giá trị là gì và nó áp dụng như thế nào cho đối tượng?
Sự khác biệt là, theo giá trị, chúng tôi muốn nói rằng việc cấp phát bộ nhớ mới được thực hiện mỗi khi có thứ gì đó được tạo trong khi trong trường hợp tham chiếu, chúng tôi trỏ đến không gian bộ nhớ đã được tạo
Trong ngữ cảnh của javascript, tất cả các kiểu dữ liệu nguyên thủy được cấp phát bộ nhớ thông qua phương thức giá trị và đối với một đối tượng, cả hai đều là bản sao theo giá trị hoặc tham chiếu tùy thuộc vào việc triển khai
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
09Bản sao/nhân bản đối tượng nông và sâu là gì?
Sự khác biệt cốt lõi giữa bản sao nông và sâu là cách các thuộc tính được sao chép sang đối tượng mới
Trong Bản sao nông, đối tượng mới chia sẻ dữ liệu với đối tượng cũ hơn i. e trong trường hợp ví dụ trên sử dụng
const firstObj = {
1: "deepak",
"age": 28
}
81 tạo một bản sao nông const firstObj = {
1: "deepak",
"age": 28
}
82 của đối tượng const firstObj = {
1: "deepak",
"age": 28
}
83. Vì vậy, chuyển qua tham chiếu là một bản sao nông trong hầu hết các trường hợpNgoài ra, Một bản sao nông sẽ sao chép các thuộc tính cấp cao nhất, nhưng đối tượng lồng nhau được chia sẻ giữa bản gốc [nguồn] và bản sao [đích]
Một cách khác để sao chép nông là sử dụng
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
74 được thảo luận khi bắt đầu. Hãy xem ví dụ// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
0Như chúng ta có thể thấy ở trên
const firstObj = {
1: "deepak",
"age": 28
}
85 đó là một cạm bẫy của // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
74. const firstObj = {
1: "deepak",
"age": 28
}
87 chỉ tạo các bản sao nông. Cả const firstObj = {
1: "deepak",
"age": 28
}
88 và const firstObj = {
1: "deepak",
"age": 28
}
89 đều có chung tham chiếu đến đối tượng vì các bản sao riêng lẻ không được tạo, thay vào đó, một tham chiếu đến đối tượng đã được sao chépTrong Deep copy, đối tượng mới sẽ có tập hợp các cặp khóa-giá trị riêng [có cùng giá trị với đối tượng gốc] thay vì chia sẻ
Hãy xem một số cách để thực hiện một bản sao sâu
// syntax - Object.create[prototype[, propertiesObject]]
000
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
1Vấn đề ở trên là chúng ta không thể sao chép các hàm hoặc khóa đối tượng do người dùng xác định có giá trị là
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
001 hoặc // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
002// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
2Ngoài ra, phương pháp này không hoạt động đối với các đối tượng hình tròn
Ghi chú. Các đối tượng hình tròn là các đối tượng có các thuộc tính tự tham chiếu
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
3Ở trên sẽ đưa ra một lỗi nói
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
0032. Sử dụng toán tử trải rộng ES6 —
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
4Tuy nhiên,
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
004 vẫn được sao chép nông cạnLàm thế nào để so sánh hai đối tượng?
Các toán tử đẳng thức
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
005 và đẳng thức nghiêm ngặt // syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
006 cho các đối tượng hoạt động giống hệt nhau. e hai đối tượng chỉ bằng nhau nếu chúng chia sẻ cùng một tham chiếu đến bộ nhớChẳng hạn, nếu hai biến tham chiếu đến cùng một đối tượng thì chúng bằng nhau
// syntax - Object.create[prototype[, propertiesObject]]
var newStudent = Object.create[student];
// this create a new object with old object added in its prototype // chain
5Vui lòng cân nhắc nhập email của bạn tại đây nếu bạn muốn được thêm vào danh sách email của tôi và theo dõi tôi trên phương tiện để đọc thêm bài viết về javascript và trên Github để xem mã điên rồ của tôi. Nếu có gì chưa rõ hoặc muốn chỉ ra điều gì, hãy comment xuống bên dưới