[Problem] Lấy key đầu tiên tìm thấy chứa giá trị cần tìm (ok)

Bạn có thể sử dụng Object.keys() kết hợp với find() hoặc filter() để tìm key chứa giá trị cụ thể trong JavaScript. Dưới đây là cách làm:

Cách 1: Dùng find() (Trả về key đầu tiên tìm thấy)

javascriptCopyEditconst ahash = { "one": [1, 2, 3], "two": [4, 5, 6] };

const targetNumbers = [4, 5, 6];
const key = Object.keys(ahash).find(k => ahash[k].some(num => targetNumbers.includes(num)));

console.log(key); // Kết quả: "two"

👉 Lấy key đầu tiên tìm thấy chứa số cần tìm.


Cách 2: Dùng filter() (Trả về tất cả các key phù hợp)

javascriptCopyEditconst keys = Object.keys(ahash).filter(k => ahash[k].some(num => targetNumbers.includes(num)));

console.log(keys); // Kết quả: ["two"]

👉 Trả về mảng chứa tất cả key thỏa mãn điều kiện.

Bạn thích cách nào hơn? 🚀

Last updated

Was this helpful?