Tôi hiểu điều này là một chút không chính thống.Làm cách nào để có được tên khóa (bằng băm) bằng cách sử dụng giá trị của nó?
Cho phép nói rằng tôi có băm này.
someHash = {
'item1' => '5',
'item2' => '7',
'item3' => '45',
'item4' => '09'
}
Sử dụng js gốc hoặc nguyên mẫu hoặc Jquery - có phương pháp nào cho phép tôi nhận "tên khóa" chỉ bằng cách có giá trị không?
Tôi không muốn tất cả khóa, chỉ là khóa khớp với giá trị của tôi. Sắp xếp một bản đồ giống như một bản đồ ngược lại?
Tôi đang nhận được lợi tức từ db mà tôi nhận được "giá trị" và tôi phải khớp với giá trị đó với một số băm js ở giao diện người dùng.
Vì vậy, ứng dụng đưa cho tôi "45" ... Có cách nào để sử dụng js (prototype hoặc jquery) để nhận khóa "item3" không?
Bạn sẽ phải lặp qua tất cả các cặp khoá/giá trị duy nhất và trở lại khóa đầu tiên chứa giá trị của bạn. – Blender
Hashes không hoạt động theo cách đó. Họ cung cấp tra cứu hiệu quả của chìa khóa để có được giá trị.Cách khác xung quanh yêu cầu lặp lại (có thể) mỗi khóa duy nhất cho đến khi bạn tìm thấy giá trị khớp. Chỉ cần đảo ngược định nghĩa của bạn về khóa và giá trị. –
Đối với các mảng thông thường, bạn có thể sử dụng '.indexOf', nhưng bạn đang nói về việc lặp qua các phần tử đối tượng. – Brad