2009-12-01 43 views
32

Tôi đã cố gắng tìm xem điều này có khả thi không, nhưng tôi không thể tìm thấy câu trả lời của mình.Mảng bên trong đối tượng Javascript?

Tôi đang cố gắng để có được những điều sau đây để công việc:

var defaults = { 
'background-color': '#000', 
color: '#fff', 
weekdays: {['sun','mon','tue','wed','thu','fri','sat']} 
}; 

Nó chỉ cung cấp cho một lỗi, và tôi đã cố gắng sử dụng ({...})[{...}] Tôi muốn để có thể truy cập vào các ngày trong tuần sử dụng somthing như:

defaults.weekdays[0]; 

là điều này có thể?

+5

Bạn sẽ không nhắc đến điều này, và không có ai đã nhận xét về nó, nhưng nếu bạn muốn có một gạch nối trong một chìa khóa như 'background-color', nó cần phải được trích dẫn. Ví dụ: "background-color": '# 000'' –

+5

Lưu ý nhanh: '[]' là dành cho mảng, '{}' là dành cho các đối tượng –

+0

Cảm ơn CresentFresh, tôi đã thêm dấu ngoặc kép, nhưng đó không phải là vấn đề tôi chạy vào :) – Mottie

Trả lời

67

Giết dấu ngoặc nhọn.

var defaults = { 
backgroundcolor: '#000', 
color: '#fff', 
weekdays: ['sun','mon','tue','wed','thu','fri','sat'] 
}; 
+1

Cũng đảm bảo rằng bạn không có dấu phẩy sau khi kết thúc phần cuối cùng] hoặc mã của bạn sẽ bị vỡ trong IE7. –

+4

... và chỉ IE7: ( –

+0

Ahhh ok cảm ơn bạn! – Mottie

10
// define 
var foo = { 
    bar: ['foo', 'bar', 'baz'] 
}; 

// access 
foo.bar[2]; // will give you 'baz' 
+2

Bạn có thể làm như var foo = {bar: []} và sau đó nói foo.bar [7] = 'hi'; như bạn có thể khi nó ở bên ngoài của một đối tượng? – HumbleWebDev

0
var obj = { 
webSiteName: 'StackOverFlow', 
find: 'anything', 
onDays: ['sun'  // Object "obj" contains array "onDays" 
      ,'mon', 
      'tue', 
      'wed', 
      'thu', 
      'fri', 
      'sat', 
      {name : "jack", age : 34}, 
       // array "onDays"contains array object "manyNames" 
      {manyNames : ["Narayan", "Payal", "Suraj"]}, //     
      ] 
}; 
0

var defaults = { 
 
       "background-color": "#000", 
 
       color: "#fff", 
 
       weekdays: [ 
 
          {0: 'sun'}, 
 
          {1: 'mon'}, 
 
          {2: 'tue'}, 
 
          {3: 'wed'}, 
 
          {4: 'thu'}, 
 
          {5: 'fri'}, 
 
          {6: 'sat'} 
 
          ] 
 
       }; 
 
       
 
console.log(defaults.weekdays[3]);

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