Skip to main content

Xóa phần tử Duplicates trong mảng sử dụng ES6


Dưới đây là 3 cách để lọc các phần tử trùng nhau (duplicates) trong mảng và trả về những giá trị duy nhất. Tôi thích sử dụng Set bởi vì nó ngắn và đơn giản.

1. Sử dụng Set:

Đầu tiên sẽ tìm hiểu Set là gì:

Set là một đối tượng mới được giới thiệu trong ES6. Bởi vì Set chỉ cho lưu trữ các giá trị duy nhất. Khi bạn truyền vào nó 1 mảng thì nó sẽ xóa những giá trị trùng lặp.

Okay, chúng ta sẽ nhìn những đoạn code sau để hiểu hơn về Set:

1. Đầu tiên, chúng ta sẽ tạo 1 Set mới bằng cách truyền vào cho nó 1 mảng. Bởi vì Set chỉ nhận các giá trị duy nhất lên sẽ xóa các phần tử trùng lặp.

2. Bây giờ các phần tử trùng nhau biến mất, chúng ta sẽ convert nó lại thành mảng bằng cách sử dụng toán tử ...



Convert Set sang mảng sử dụng Array.from

Ngoài ra, bạn có thể sử dụng Array.from để convert Set sang mảng:



2. Sử dụng filter:

Để hiểu hơn về cách này, chúng ta sẽ xem qua cách 2 phương thức hoạt động: indexOf và filter.

indexOf

Phương thức indexOf sẽ trả về vị trí index đầu tiên mà chúng tìm thấy trong mảng.



filter

Phương thức filter() sẽ tạo ra 1 mảng mới với các điều kiện cho trước. Nói cách khác, các phần tử thỏa mãn điều kiện trả về true thì sẽ nằm trong mảng đã được lọc. Các phần tử sai điều kiện sẽ bị loại bỏ trong mảng mới.



Dưới đây là bảng console.log đoạn code trên:



3. Sử dụng reduce:

Trong trường hợp này, hàm reduce sẽ kiểm tra mảng xem có phần tử đó hay không. Nếu chưa có sẽ thêm phần tử đó vào mảng, còn không sẽ bỏ qua phần tử đó.

Hàm reduce hơi khó hiểu một chút, vì vậy hãy xem thử ví dụ sau:



Và đây là kết quả console.log:



Thanks for reading ❤

Resource: Medium Dailyjs

Comments

Post a Comment

Popular posts from this blog

Kali Linux Cheat Sheet for Penetration Testers - Part 1

Penetration testing (also called pen testing) là thực hành thử nghiệm một hệ thống máy tính , mạng hoặc ứng dụng Web để tìm các lỗ hổng mà kẻ tấn công có thể khai thác . Kali Linux Cheat Sheet cho các xét nghiệm thâm nhập là một cái nhìn tổng quan cấp cao cho môi trường điển hình thử nghiệm thâm nhập từ nmap, sqlmap, ipv4, điều tra, vân tay vv Luôn luôn xem các trang người đàn ông nếu bạn có nghi ngờ hoặc các lệnh này không làm việc như nêu ở đây (có thể được hệ điều hành dựa trên phiên bản thay đổi dựa vv) cho các hệ điều hành bạn đang sử dụng (như BlackBox, Đen Ubuntu, ParrotSec OS, Debian, Ubuntu, vv). Tôi cũng đã tham khảo một số hướng dẫn mà tôi thấy hữu ích trong các phần khác nhau và nó có thể có ích. Recon and Enumeration NMAP Commands Nmap ("Network Mapper") là một tiện ích mã nguồn mở miễn phí cho khám phá mạng và kiểm toán an ninh. Nhiều hệ thống và quản trị mạng cũng tìm thấy nó hữu ích cho các nhiệm vụ như kiểm kê mạng, lịch trình nâng cấp dịch ...

Kali Linux Cheat Sheet for Penetration Testers - Part 2

Password Cracking John The Ripper – JTR John the Ripper là khác nhau từ các công cụ như Hydra. Hydra không mù brute-buộc bằng cách cố gắng kết hợp tên người dùng / mật khẩu trên một daemon dịch vụ như máy chủ FTP hoặc máy chủ telnet. Tuy nhiên John cần băm đầu tiên. Vì vậy, thách thức lớn hơn cho một hacker là lần đầu tiên có được băm mà là để được nứt. Bây giờ một ngày băm là dễ dàng hơn crackable sử dụng các bảng cầu vồng miễn phí trên mạng. Chỉ cần đi đến một trong các trang web, trình băm và nếu băm được làm bằng một từ chung, thì trang web sẽ hiển thị các từ gần như ngay lập tức. Bảng Rainbow cơ bản lưu trữ các từ phổ biến và băm của họ trong một cơ sở dữ liệu lớn. Lớn hơn cơ sở dữ liệu, nhiều hơn những lời phủ. john –wordlist=/usr/share/wordlists/rockyou.txt hashes JTR password cracking john –format=descrypt –wordlist /usr/share/wordlists/rockyou.txt hash.txt JTR forced descrypt cracking with wordlist john –format=descrypt hash –show JTR forced descrypt b...

Tại sao lại chọn HDH Kali Linux ?

Xin chào tất cả mọi người, hôm nay mình sẽ nói về chủ đề "Tại sao lại chọn HDH Kali Linux  ?". Tuy tuy nhiên để giải thích về điều này thì ít nhất các bạn cũng phải  biết Linux là gì đúng không ! Theo như Bách khoa toàn thư mở Wikipedia  thì Linux là tên gọi của một hệ điều hành máy tính và cũng là tên hạt nhân của hệ điều hành. Nó có lẽ là một ví dụ nổi tiếng nhất của phần mềm tự do và của việc phát triển mã nguồn mở. Phiên bản Linux đầu tiên do Linus Torvalds viết vào năm 1991, lúc ông còn là một sinh viên của Đại học Helsinki tại Phần Lan. Ông làm việc một cách hăng say trong vòng 3 năm liên tục và cho ra đời phiên bản Linux 1.0 vào năm 1994. Bộ phận chủ yếu này được phát triển và tung ra trên thị trường dưới bản quyền GNU General Public License. Do đó mà bất cứ ai cũng có thể tải và xem mã nguồn của Linux. Một cách chính xác, thuật ngữ "Linux" được sử dụng để chỉ Nhân Linux, nhưng tên này được sử dụng một cách rộng rãi để miêu tả tổng thể một hệ điều ...