构建调查问卷时要使用的Javascript数组的正确类型是什么?
我正在构建一个单页问卷应用程序,我不确定构建问题数组的正确方法是什么。另外,以这种方式混合各种类型的问题是一种不好的做法吗?(同一阵列中的单选、多选?)基本上,我仍在努力理解我所看到的两种基本方法的优缺点 备选案文1:构建调查问卷时要使用的Javascript数组的正确类型是什么?,javascript,arrays,Javascript,Arrays,我正在构建一个单页问卷应用程序,我不确定构建问题数组的正确方法是什么。另外,以这种方式混合各种类型的问题是一种不好的做法吗?(同一阵列中的单选、多选?)基本上,我仍在努力理解我所看到的两种基本方法的优缺点 备选案文1: var hygiene = [ { pageheader: "Self-Care" } { q: "When was your last shower?", choicetype: "radio", a1: "Today",
var hygiene = [
{
pageheader: "Self-Care"
}
{
q: "When was your last shower?",
choicetype: "radio",
a1: "Today",
a2: "Yesterday",
a3: "Two days ago",
a4: "I don't know"
}
{
q: "How much do you weigh today?",
choicetype: "keypad"
}
{
q: "Do you take any medications?",
choicetype: "radio",
a1: "Yes",
a2: "No"
}
{
q: "Which medications?",
choicetype: "multiselect",
a1: "Zostavax",
a2: "Percocet",
a3: "Actemra",
a4: "Cimzia",
a5: "Relprevv"
}
];
备选案文2:
var hygiene = {
pageheader: "Self-Care",
question1: [
"When was your last shower?", "radio", "Today", "Yesterday",
"Two days ago", "I don't know"
],
question2: [
"How much do you weigh today?", "keypad"
],
question3: [
"Do you take any medications?", "radio", "Yes", "No"
],
question4: [
"Which medications?", "multiselect", "Zostavax", "Percocet",
"Actemra", "Cimzia", "Relprevv"
]
};
选项1比选项2好得多,因为您指定了变量,并为每个字符串指定了有意义的名称,以便以后在代码中使用
如果你有大量的问题,这取决于你代码的可读性。如果您在一个文件中有100个,您喜欢1个还是2个?我的建议是不使用其中任何一个,而是使用以下内容:
var hygiene = {
pageheader: "Self-Care",
questions: [
{
question: "When was your last shower?",
choicetype: "radio",
answers: [
"Today",
"Yesterday",
"Two days ago",
"I don't know"
]
},
{
question: "How much do you weigh today?",
choicetype: "keypad"
},
{
question: "Do you take any medications?",
choicetype: "radio",
answers: [
"Yes",
"No"
]
},
{
question: "Which medications?",
choicetype: "multiselect",
answers: [
"Zostavax",
"Percocet",
"Actemra",
"Cimzia",
"Relprevv"
]
}
]
}
这其实并不重要,只需选择一个,不要浪费时间。两个示例都不能准确地表示您所拥有的内容的结构。您需要了解对象和数组之间的区别。@Diodeus:数据交换与此有什么关系?向下投票有什么关系?哥们只是想知道他是否在正确的轨道上。选项2本质上是一种jsonized CSV格式,由于省略了字段名的键,它的优点只是稍微小一些(从服务器传输的字节数来看)。如果您正在传输大量数据,那么值得考虑选项2。否则,选项1更具可读性,更易于使用。同意。如果有很多这样的数据,为优化而发布它们将是一个完全不同的场景。添加一些原因,我将对此进行投票。大致上,{}被用作定义属性的“类”。“[]”用于定义定义集合。我的意思是在答案中,但我想这样就可以了。关键是你的答案给出了一个建议的结构(这是好的),没有任何理由说明原因。