2012-03-02 31 views
5

Tôi có ENUM sau trong Javascript của tôi:Sử dụng Enums Trong Javascript

var letters = { "A": 1, "B": 2, "C": 3.....} 

Và để sử dụng này tôi biết sử dụng:

letters.A 

Nhưng tôi đã tự hỏi nếu có một cách mà tôi có thể thay thế A bằng một biến. Tôi đã thử một cái gì đó như

var input = "B"; 

letters.input; 

nhưng điều này không hiệu quả.

Mọi đề xuất?

Cảm ơn

+0

Tại sao bạn mong đợi 'letters.input' có nghĩa là gì đó khi bạn chưa bao giờ định nghĩa' letters.input' ngay từ đầu? –

+0

@AdamMihalcin chữ cái là enum và đầu vào là thay thế của hardcoded A trong dòng đầu tiên. – user1219627

Trả lời

11

Bạn có thể sử dụng Bracket Notation Member Operator:

letters[input]; 

Nó sẽ là một chuỗi, vì vậy letters.B == letters["B"], và:

var letters = { "A": 1, "B": 2, "C": 3 }, 
    input = "B"; 
console.log(letters[input]); 

đầu ra 2.

+0

Làm đẹp chính xác những gì tôi đang tìm kiếm cảm ơn! – user1219627

+0

@ user1219627 Bạn được chào đón – Paulpro

+0

@ row1 Tôi chưa thể ... thời gian bị giới hạn – user1219627

Các vấn đề liên quan