【发布时间】:2012-12-24 09:19:14
【问题描述】:
我正在创建一个在线指南。它将调查用户,并根据他们的回答,输出最适合他们需求的列表。
我即将组装大量对象和属性,但在我花太多时间之前,我想先解决一些问题:
为了让您了解我的目标,这里有一个使用交互式指南查找旅行目的地的示例:
用户的问题:
<form name="equator" action="">
<p>What side of the equator do you want to visit?</p>
<input type="radio" name="equator" value="north">North<br />
<input type="radio" name="equator" value="south">South<br />
</form>
<br />
<form name="english" action="">
<p>Does English need to be the first language?</p>
<input type="radio" name="english" value="yes">Yes<br />
<input type="radio" name="english" value="no">No<br />
</form>
<br />
<form name="beach" action="">
<p>Do you want a nearby beach?</p>
<input type="radio" name="beach" value="yes">Yes<br />
<input type="radio" name="beach" value="maybe">Maybe<br />
<input type="radio" name="beach" value="no">No<br />
</form>
以下是我打算创建对象列表的方式:
destinations = [
{
name: "Moscow", equator: "north", english: "no", beach: "no"
},
{
name: "Lima", equator: "south", english: "no", beach: "no"
},
{
name: "Nantucket", equator: "north", english: "yes", beach: "yes"
},
]
在我正在处理的项目中,对象列表实际上有数百个,最多有两打属性。也就是说,这是我的担忧(如果它影响你的答案,我应该注意我的 Javascript 经验只能追溯到大约两周):
- 考虑到对象列表的潜在大小,我上面的示例是否是一种有效的存储对象列表的方法?如果没有,你能推荐一些更好的吗?
- 到目前为止,我使用 Javascript 的经验包括浏览“w3schools”教程和创建迷你项目以了解该语言......到目前为止,我创建的每个脚本都已即时处理。考虑到我的项目(如上所述),我是否应该担心任何性能损失?
感谢您的宝贵时间。
【问题讨论】:
-
不应该
english和beach是布尔值吗? -
离题:请通读w3fools.com
-
对于您提供/描述的对象类型,"hundreds" 不是任何现代设备的必然数字。在效率之前担心功能。
-
使用 one 表单和 jQuery,您只需要一个衬垫
$('form').serializeArray()即可获得您的结构。 -
该死,我没有意识到 w3schools 是个笑话...下次我需要做一些研究,然后再浪费两周时间从在线资源中学习...感谢替代资源,伙计们。
标签: javascript arrays list object