我希望在javascript中在数组中创建以下格式。
每个项目都有:
每个输入都是:
请指导我,如何在JavaScript中执行此操作
答案 0 :(得分: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样。
答案 1 :(得分:1)
这在Java或C#这样的强类型语言中会很棘手,但在JavaScript中它很容易。
由于JavaScript没有强大的数组值和变量类型,因此您只需创建一个对象文字数组。每个对象都包含您指定的属性。没有必要在每个属性上指定string
类型 - JavaScript会为您推断出这一点。
虽然这很容易做到,但缺点是您不会进行任何类型检查,因此某些代码可能会无意中将对象粘贴到您的某个字符串字段中,而JavaScript不会阻止它。
因此,请注意JavaScript灵活性的优缺点,并确保对数据进行服务器端健全性检查。
答案 2 :(得分: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
]