Loại đối tượng trả về JavaScript

đối tượng JavaScript. Phương thức values[] được sử dụng để trả về một mảng có các phần tử là các giá trị thuộc tính có thể đếm được trên đối tượng. Thứ tự của các thuộc tính giống như thứ tự do đối tượng đưa ra theo cách thủ công nếu một vòng lặp được áp dụng cho các thuộc tính. Vật. các giá trị [] lấy đối tượng làm đối số trong đó các giá trị thuộc tính riêng có thể đếm được sẽ được trả về và trả về một mảng chứa tất cả các giá trị thuộc tính có thể đếm được của đối tượng đã cho

cú pháp.   

Object.values[obj]

Thông số.   

  • đối tượng. Nó là đối tượng có vô số giá trị thuộc tính sẽ được trả về

Giá trị trả về. Vật. values[] trả về một mảng chứa tất cả các giá trị thuộc tính có thể đếm được của đối tượng đã cho.  

Ví dụ về chức năng trên được cung cấp dưới đây

ví dụ 1. Trong ví dụ này, một mảng “kiểm tra” có ba giá trị thuộc tính [‘x’, ‘y’, ‘z’] và đối tượng. phương thức values[] trả về vô số giá trị thuộc tính của mảng này. Thứ tự của các thuộc tính giống như thứ tự được cung cấp bởi đối tượng theo cách thủ công.  

jav




Array ["x", "y", "z"]
0

Array ["x", "y", "z"]
1
Array ["x", "y", "z"]
2

Array ["x", "y", "z"]
1
Array ["x", "y", "z"]
4
Array ["x", "y", "z"]
5
Array ["x", "y", "z"]
0
Array ["x", "y", "z"]
1
Array ["x", "y", "z"]
2
Array ["x", "y", "z"]
1
Array ["x", "y", "z"]
4
Array ["x", "y", "z"]
5

Array ["x", "y", "z"]
1
Array ["x", "y", "z"]
7

Array ["x", "y", "z"]
8

đầu ra.  

Array ["x", "y", "z"]

ví dụ 2. Trong ví dụ này, một đối tượng dạng mảng “kiểm tra” có ba giá trị thuộc tính { 0. ’23’, 1. 'chuyên viên máy tính', 2. 'true' } và đối tượng. phương thức values[] trả về vô số giá trị thuộc tính của mảng này. Thứ tự của các thuộc tính giống như thứ tự được cung cấp bởi đối tượng theo cách thủ công.  

jav




Array ["x", "y", "z"]
0

Array ["x", "y", "z"]
1
Array ["x", "y", "z"]
01

Array ["x", "y", "z"]
1
Array ["x", "y", "z"]
03

Array ["x", "y", "z"]
1
Array ["x", "y", "z"]
4
Array ["x", "y", "z"]
06_______107
Array ["x", "y", "z"]
08
Array ["x", "y", "z"]
09
Array ["x", "y", "z"]
60
Array ["x", "y", "z"]
61
Array ["x", "y", "z"]
62

Array ["x", "y", "z"]
1
Array ["x", "y", "z"]
64

Array ["x", "y", "z"]
8

đầu ra.   

Array ["x", "y", "z"]
0

ví dụ 3. Trong ví dụ này, một đối tượng dạng mảng “kiểm tra” có ba giá trị thuộc tính { 70. 'x', 21. 'y', 35. 'z' } theo thứ tự ngẫu nhiên và đối tượng. Phương thức values[] trả về các giá trị thuộc tính có thể đếm được của mảng này theo thứ tự tăng dần của giá trị của các chỉ số

jav




Array ["x", "y", "z"]
0

Array ["x", "y", "z"]
1
Array ["x", "y", "z"]
01

Array ["x", "y", "z"]
1
Array ["x", "y", "z"]
03

Array ["x", "y", "z"]
1
Array ["x", "y", "z"]
4
Array ["x", "y", "z"]
03
Array ["x", "y", "z"]
0
Array ["x", "y", "z"]
05
Array ["x", "y", "z"]
2
Array ["x", "y", "z"]
07
Array ["x", "y", "z"]
4
Array ["x", "y", "z"]
62

Array ["x", "y", "z"]
1
Array ["x", "y", "z"]
11

Array ["x", "y", "z"]
8

đầu ra.   

Array ["x", "y", "z"]
6

Các ứng dụng.   

  • Vật. các giá trị [] được sử dụng để trả về các giá trị thuộc tính có thể đếm được của một mảng đơn giản, đối tượng giống mảng và đối tượng giống mảng với thứ tự khóa ngẫu nhiên

ngoại lệ.   

  • Nó gây ra TypeError nếu đối số được truyền không phải là một đối tượng
  • Nếu một đối tượng không được truyền làm đối số cho phương thức, thì nó sẽ thuyết phục nó và coi nó như một đối tượng

Chúng tôi có một danh sách đầy đủ các phương thức Đối tượng Javascript, để kiểm tra những phương thức đó, vui lòng xem qua bài viết Tham khảo đầy đủ về Đối tượng JavaScript này

Mọi người đều biết rằng việc tạo một đối tượng JavaScript theo nghĩa đen cũng đơn giản như. var foo = {}. Không có vấn đề gì cả. Trên thực tế, chúng ta thậm chí có thể thêm các thuộc tính và phương thức cho đối tượng này bằng các biểu thức như

1

foo. tên = "thanh"

hoặc…

1

2

3

foo. nói = hàm[]{

cảnh báo["đây là chức năng nói"];

}

Mặc dù các cách tiếp cận này đều đơn giản, nhưng có một sự khác biệt giữa một đối tượng theo nghĩa đen và một thể hiện của một lớp. Ví dụ: var foo = new Foo[] không hoàn toàn giống với var foo = {} trước đó của chúng ta. Câu hỏi là, chúng ta có thể có nó theo cả hai cách? . "Đúng. ”

Do bản chất rất biểu cảm của JavaScript, những gì chúng ta trả về từ một hàm thực sự phụ thuộc vào chúng ta. Vì vậy, nếu chúng ta muốn có một hàm xây dựng trả về một đối tượng theo nghĩa đen, chúng ta có thể theo nghĩa đen [xin lỗi. – ] chỉ cần sử dụng câu lệnh “return” và đặt một đối tượng ở phía bên kia của câu lệnh đó

Ví dụ #1 – Trả về một đối tượng đơn giản

1

2

3

4

5

6

7

8

9

10

var Foo = hàm[]{

trả về {

màu. "xanh lam",

nói. chức năng[]{

bảng điều khiển. log["đây là phương pháp say"];

}

}

}

var bar = mới Foo[];

thanh. nói[]; /

Trong ví dụ # 1, biến bar trở thành một thể hiện của hàm tạo Foo[] của chúng ta. Kết quả là, thanh là một đối tượng theo nghĩa đen. Khi chúng ta chạy phương thức say[] của nó, chúng ta sẽ nhận được đầu ra như mong đợi và nếu chúng ta chạy lệnh sau. bảng điều khiển. nhật ký [thanh. màu sắc], chúng ta sẽ nhận được "màu xanh". Nhưng thực sự không có nhiều giá trị gia tăng ở đây. Tất nhiên, chúng ta có thể đạt được kết quả cuối cùng tương tự bằng cách nói đơn giản var bar = {} và bao gồm các thuộc tính và phương thức chính xác giống nhau

Nhưng trên thực tế, có tiềm năng lớn cho một số giá trị gia tăng khá nghiêm trọng ở đây. Ví dụ: sự khác biệt giữa việc chỉ gán một đối tượng theo nghĩa đen cho thanh và trả về một đối tượng theo nghĩa đen từ lớp Foo[] của chúng ta là khi chúng ta khởi tạo Foo[], chúng ta sẽ có quyền truy cập vào hàm bên ngoài. Việc đóng này cung cấp một phạm vi trong đó chúng tôi có thể lưu trữ các thành viên riêng tư, để truy cập sau này nếu chúng tôi muốn, điều này rất quan trọng

Ví dụ #2 – Trả về một đối tượng bằng một phương thức đặc quyền

1

2

3

4

5

6

7

8

9

10

11

12

13

var Foo = hàm[]{

var _acctNum = '';

 

trả về {

getAcctNum. chức năng[]{

return _acctNum;

},

setAcctNum. hàm[newAcctNum]{

_acctNum = newAcctNum;

}

}

}

var bar = mới Foo[];

Trong ví dụ #2, chúng ta vẫn trả về một đối tượng theo nghĩa đen, và kết quả là, thể hiện kết quả chỉ là một đối tượng theo nghĩa đen. Giá trị gia tăng là chúng tôi cũng đã xác định một biến riêng tư. _acctNum. Trên thực tế, chuyển sang một cấp độ chức năng mới. biến _acctNum không khả dụng với thế giới bên ngoài. Do đó, chúng tôi có toàn quyền kiểm soát cách nó bị đột biến. Ở đây chúng ta đã định nghĩa hai phương thức _getAcctNum và _SetAcctNum. Do đó, những thành viên đặc quyền này có quyền truy cập vào biến riêng tư _acctNum của chúng tôi. Vì vậy, điều quan trọng nhất là chúng ta có thể thay đổi hoặc truy xuất giá trị của _acctNum bằng hai phương thức đặc quyền này

Cuối cùng, chúng ta có thể làm như sau

1

2

3

thanh. getAcctNum[] // chuỗi rỗng

thanh. setAcctNum["123456"]

thanh. getAcctNum[] // "123456"

Tóm lược

Giá trị gia tăng của việc trả về một đối tượng bằng chữ từ hàm tạo là trong khi bạn có một bảng băm rất đơn giản để làm việc với tư cách là cá thể của mình, bạn cũng có quyền truy cập vào các biến riêng được xác định trong hàm tạo. Do đó, trong trường hợp này, bạn có thể coi giá trị trả về là bar = {}, nhưng với giá trị gia tăng

Kiểu trả về của đối tượng trong JavaScript là gì?

Toán tử typeof trả về "đối tượng" cho các đối tượng, mảng và null . Toán tử typeof không trả về "đối tượng" cho các hàm.

Bạn có thể trả lại một đối tượng trong JavaScript không?

Để trả về một đối tượng từ hàm JavaScript, hãy sử dụng câu lệnh return với từ khóa này .

Kiểu trả về của typeof là gì?

Toán tử typeof trả về một chuỗi cho biết loại giá trị của toán hạng.

Làm cách nào để kiểm tra kiểu dữ liệu trong JavaScript?

typeof. Từ khóa typeof giúp xác định loại biến trong Javascript . Vì Javascript là ngôn ngữ lập trình được nhập động, nên có thể sử dụng typeof để tìm loại biến. Nó có thể được sử dụng trong một hàm để kiểm tra kiểu dữ liệu của một biến hoặc để kiểm tra xem một biến có được khai báo hay không.

Chủ Đề