2015-06-01 58 views
6

tính Javascript vật có thể được đặt tên với chuỗi rỗng, ví dụ:Cách kiểm tra thuộc tính của đối tượng nếu tên thuộc tính là một chuỗi rỗng?

foo = { 
    "" : "bar" 
} 

Dot ký hiệu dường như không để có thể gọi bất động sản này. Đầu ra của bảng điều khiển:

foo. 
>> "missing name after . operator" 

Bạn sẽ gọi thuộc tính "" như thế nào?

+1

Cùng theo cách bạn muốn truy cập vào một tài sản có chứa bất cứ điều gì khác mà sẽ không có cú pháp JavaScript pháp lý. –

+0

"Tên thuộc tính đối tượng có thể là bất kỳ chuỗi JavaScript hợp lệ nào hoặc bất kỳ thứ gì có thể được chuyển đổi thành chuỗi, kể cả chuỗi trống". https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects – meetalexjohnson

+0

Tôi không chắc liệu nhận xét đó có được hướng đến tôi hay không; một chuỗi JavaScript * hợp lệ * không nhất thiết phải là mã JavaScript * hợp lệ *, là ký pháp chấm là gì. –

Trả lời

4

Sử dụng một chuỗi rỗng như một chìa khóa với cú pháp khung:

foo[""] 
0

Điều này có thể được thực hiện với ký hiệu khung vuông. Bảng điều khiển đầu ra:

foo[""] 
>> "bar" 

Documentation

+0

Bất cứ ai cũng biết nếu nó có thể với ký hiệu chấm? – meetalexjohnson

+0

Tất nhiên là không, đó không phải là JavaScript hợp pháp. –

+1

@ meetalexjohnson — không. Ký hiệu dấu chấm chỉ có thể được sử dụng với tên thuộc tính [* số nhận dạng hợp lệ *] (http://ecma-international.org/ecma-262/5.1/#sec-7.6) (ví dụ: tên có thể được sử dụng làm tên biến) và "" không phù hợp với tiêu chí. – RobG

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