Đối diện của Omit trong TypeScript là gì?

Doi Dien Cua Omit Trong Typescript La Gi



Khi chỉ cần một số thuộc tính nhất định của giao diện cho quá trình thực thi, các thuộc tính không được yêu cầu sẽ trở thành nguyên nhân chính dẫn đến hiệu suất thấp vì chúng hiện chỉ tiêu tốn dung lượng. Trong JavaScript, không có cách nào để loại trừ các thuộc tính không bắt buộc của giao diện tại thời điểm thực thi. May mắn thay! Điểm yếu hoặc trường hợp sử dụng này được TypeScript xử lý vì nó cung cấp các tiện ích loại “Bỏ qua” và “Chọn”, giúp ích rất nhiều trong việc chỉ chọn các thuộc tính cụ thể.

Blog này sẽ giải thích loại bỏ qua và loại ngược lại trong TypeScript bằng cách đề cập đến các phần sau:







  • Loại bỏ qua trong TypeScript là gì?
  • Đối diện của loại bỏ qua trong TypeScript là gì?

Loại bỏ qua trong TypeScript là gì?

Bản đánh máy 'Bỏ sót' type tạo ra một giao diện mới từ được cung cấp “” và bỏ qua hoặc loại trừ các thuộc tính được cung cấp dưới dạng 'Chìa khóa' . Nó nhận và xử lý các giá trị cho tất cả các thuộc tính còn lại và không chấp nhận các giá trị cho các thuộc tính được truyền dưới dạng 'Chìa khóa' . Nói một cách đơn giản, 'Bỏ sót' Loại loại trừ các thuộc tính được truyền lại dưới dạng “Khóa” và các thuộc tính còn lại vẫn giữ nguyên.



Cú pháp
Cú pháp bỏ qua loại trong TypeScript được nêu dưới đây:



Bỏ sót < demoType, Key1 | phím2 >

Ở đâu “kiểu demo” là giao diện mà 'khóa1' “khóa2” các thuộc tính sẽ được thêm vào một cái mới 'kiểu' được tạo ra thông qua 'Bỏ sót' .





Một ví dụ để hiểu 'Bỏ sót' loại được nêu dưới đây:

kiểu linuxhintType = {
fName: chuỗi;
lTên: chuỗi;
tuổi: số lượng;
}

kiểu newType = Bỏ qua;

const cụ thể: newType = {
Tên: 'John' ,
lTên: 'Con nai'
} ;

console.log ( cụ thể.age, cụ thể.fName ) ;

Giải thích đoạn mã trên:



  • Đầu tiên 'kiểu' được đặt tên “linuxhintType” được xác định, chứa nhiều thuộc tính có tên “tên” , “lTên” , Và 'tuổi' trong đó.
  • Tiếp theo, 'Bỏ sót' loại được sử dụng sẽ mất “linuxhintType” làm đối số đầu tiên và là Khóa của 'tuổi' . Omit này lấy tất cả các thuộc tính từ “linuxhintType” và chỉ loại trừ thuộc tính 'age'.
  • Các thuộc tính được truy xuất thông qua loại “Bỏ qua” được lưu trữ trong một 'kiểu' được đặt tên 'kiểu mới' .
  • Sau đó, biến mới được tạo có chú thích kiểu 'kiểu mới' và các giá trị cho các thuộc tính còn lại được đặt.
  • Sau đó, với sự trợ giúp của một biến mới, các thuộc tính còn lại và bị loại trừ sẽ được truy xuất và hiển thị trên cửa sổ bảng điều khiển để xác minh.

Sau khi biên dịch, cửa sổ giao diện điều khiển trông như thế này:

Ảnh chụp nhanh cửa sổ bảng điều khiển cho thấy lỗi loại đã được tạo khi truy cập vào phần bị loại trừ 'tuổi' tài sản. Để được giải thích thêm về loại “Bỏ qua”, bạn có thể truy cập liên kết của chúng tôi bài báo

Đối diện của loại bỏ qua trong TypeScript là gì?

Trong TypeScript, điều ngược lại với 'Bỏ sót' 'Nhặt' kiểu. Loại này chọn hoặc chọn các thuộc tính cụ thể sắp có sẵn và tất cả các thuộc tính còn lại không được chọn sẽ bị loại trừ. Tức là hoàn toàn trái ngược với 'Bỏ sót' kiểu. Phải mất hai đối số giống nhau của 'Kiểu' 'Chìa khóa' Ở đâu 'Kiểu' là giao diện hoặc lớp mà 'Chìa khóa' thuộc tính được bao gồm và phần còn lại được loại trừ. Trong trường hợp có nhiều thuộc tính, mỗi thuộc tính được phân tách bằng cách sử dụng 'Liên hiệp' nhà điều hành “|”.

Cú pháp
Cú pháp của Pick Type trong TypeScript được nêu dưới đây:

Nhặt < demoType, Key1 | Khóa2 | phím3 >

Ở đâu, “kiểu demo” là giao diện, lớp hoặc loại mà 'Khóa1' , “Chìa khóa2” , Và “Phím 3” các thuộc tính được chọn.

Bây giờ, hãy xem qua một ví dụ để làm rõ hơn.

Ví dụ: Chọn thuộc tính cụ thể

Trong trường hợp này, các thuộc tính cụ thể từ giao diện hoặc lớp được chọn bằng loại “Pick” và các thuộc tính còn lại bị loại trừ hoàn toàn, như hiển thị bên dưới:

giao diện linuxhintInter {
fName: chuỗi;
lTên: chuỗi;
tuổi: số lượng;
}
kiểu newType = Chọn;
const cụ thể: newType = {
Tên: 'John' ,
lTên: 'con nai' , tuổi: 3. 4 } ;

Giải thích đoạn mã trên:

  • Đầu tiên là giao diện 'linuxhintInter' được tạo có chứa ba thuộc tính có tên “tên” , “lTên” , Và 'tuổi' .
  • Tiếp theo, 'Nhặt' loại được sử dụng lấy giao diện làm tham số đầu tiên và 'tuổi' “tên” là tham số thứ hai được phân tách bằng toán tử Union “|” .
  • Cái này 'Nhặt' type xác định một loại mới có tên 'kiểu mới' chỉ bao gồm 'tuổi' “tên” thuộc tính và loại trừ tất cả các thuộc tính còn lại, tức là “lTên” .
  • Bây giờ, hãy đặt cái này 'kiểu mới' làm loại cho một biến 'cụ thể' và cố gắng sửa đổi tất cả các thuộc tính giao diện. Điều này sẽ gây ra lỗi vì chỉ có các thuộc tính cụ thể mới có sẵn.

Sau khi biên dịch, cửa sổ giao diện điều khiển trông như thế này:

Ảnh chụp nhanh ở trên cho thấy lỗi xảy ra do chương trình đang sửa đổi thuộc tính không có hoặc không có trong loại đã chọn.

Bạn đã tìm hiểu về kiểu hoạt động ngược lại với Omit trong TypeScript.

Phần kết luận

Ngược lại của 'Bỏ sót' gõ vào TypeScript là 'Nhặt' type, tạo ra một loại mới chỉ bao gồm thuộc tính được cung cấp và loại trừ tất cả các thuộc tính còn lại của giao diện chính. Trong khi 'Bỏ sót' gõ vào TypeScript, cũng tạo ra các loại mới nhưng loại trừ tất cả các thuộc tính được cung cấp và chấp nhận hoặc bao gồm các thuộc tính còn lại. Bài viết này đã chứng minh điều ngược lại với Omit Type trong TypeScript.