2012-03-19 131 views
0

我期待在javascript中創建以下格式的數組。需要javascript數組格式

每個項目都有:

  • URL - >字符串(這是登錄網址)
  • 名 - >串
  • 輸入 - >陣列

而且每個輸入是:

  • name - > string
  • 類型 - >弦
  • 值 - >字符串

請指引我,如何在JavaScript

+0

谷歌的「JavaScript對象陣列字面量」 – Bergi 2012-03-19 11:40:24

+0

你能澄清你的問題一點,通過指定一些示例輸入。 – MrClan 2012-03-19 11:42:11

回答

4
[ 
    {url: 'http://google.com/', 
    name: 'google', 
    inputs: [ 
     { name: 'search-term', type: 'string', value: 'javascript' }, 
     { name: 'region', type: 'country-code', value: 'IN' } 
    ] 
    }, 
    {url: 'http://yahoo.com/', 
    name: 'yahoo', 
    inputs: [ 
     { name: 'search-term', type: 'string', value: 'javascript' }, 
     { name: 'region', type: 'country-code', value: 'US' } 
    ] 
    } 
] 

做到這一點你去那裏。

在相關說明上,JSON可能值得一看。雖然我必須說,以上不是json,只有json。

+0

好,謝謝,這是對的嗎? 'code' VAR測試= \t \t [ {URL: 'http://google.com/', 名: '谷歌', 輸入:[ {名稱: '搜索項',類型:「字符串',value:'javascript'}, {name:'region',type:'country-code',value:'IN'} ] }, {url:'http://yahoo.com/' , name:'yahoo', 輸入:[ {name:'search-term',type:'string',value:'javascript'}, {name:'region',type:'country-code' ,value:'US'} ] } ]'code' – shail 2012-03-19 11:41:29

+0

@shail關閉。你的URL後面的分號會破壞你的代碼。你在這些地方只需要一個逗號。 – Paulpro 2012-03-19 11:42:50

1

這對於像Java或C#這樣的強類型語言來說會很棘手,但在JavaScript中很容易。

由於JavaScript沒有對數組值和變量進行強類型化,因此可以創建一個對象文字數組。每個對象都將包含您指定的屬性。沒有必要在每個屬性上指定string類型 - JavaScript會爲您推斷。

雖然這很容易做到,但缺點是您不會進行任何類型檢查,所以某些代碼可能會無意中將一個對象粘貼到您的某個字符串字段中,並且JavaScript不會阻止它。

所以,只要注意JavaScript的靈活性的優點和缺點,並確保您正在對數據進行服務器端的完整性檢查。

1
var items = 
[ 
    { 
     url: "http://...", 
     name: "FOO", 
     inputs: [ 
      { 
       name: "Input1", 
       type: "LeTypeh" 
       value: "Levalueh" 
      }, 
      { 
       name: "Input2 (Foo)", 
       type: "LeType2a", 
       value: "Levalue2j" 
      } 
      // ... (insert as many comma separated inputs as you need in the foo item 
    }, 
    { 
     url: "http://...", 
     name: "BAR", 
     inputs: [ 
      { 
       name: "Input1", 
       type: "LeTypeh" 
       value: "Levalueh" 
      }, 
      { 
       name: "Input2 (Bar)", 
       type: "LeType2a", 
       value: "Levalue2j" 
      } 
      // ... (insert as many comma separated inputs as you need in the bar item here 
    } 
    //... (insert as many comma separated items as you need in the array here 
]